Caras eu não consigo entender esse capitulo
eu não entendo -d, -D, -cp… (- classpath)
por favor alguem passa um codigo bem fácil sobre ele para mim entender eu não entendo !!!
Calma calma calma
a opção -d é o seguinte
javac -d class System\S1.java
Compila a classe S1 do pacote System. Normal até aqui. Com a opção -d ele coloca o arquivo S1.class dentro do diretório
class\System\S1.class (ele cria um dir para os pacotes dentro do diretório class). -d de DESTINATION ou destino.
package System;
import java.util.*;
public class S1 {
public static void main(String[] args){
Properties p = System.getProperties();
p.setProperty("GK","is the man"); //ignorem a frase :)
p.list(System.out);
}
}
Esse programa cria um system property chamado GK com valor “is the man”. A opção -D cria um system property via linha de comando. faça o teste e execute java -Dteste=teste System.S1
Na lista de propriedades do sistema você vai ver tanto a propriedade teste quanto a propriedade GK e seus respectivos valores
[]s
Gunnar
por que eu tenho que compilar usando java -Dteste=teste System.S1 isso que eu não to entendo !
A opção -cp (classpath) é uma opção para você dizer à JVM ONDE ela tem que procurar pelos arquivos .class necessários à sua aplicação.
Coloque esse código em um diretório qualquer.
public class T{
public static void main(String[] args){
new A();
System.out.println("A");
System.out.println("T");
}
}
Dentro do diretório onde você criou esse arquivo crie um subdiretório chamado “a” e coloque esse código lá dentro
public class A{}
Compile a classe A
Agora tente compilar a classe T. Não compila.
Agora digite javac -cp a *.java no diretório onde esta o arquivo T.java
você vai reparar que agora compilou e sem a inclusão de import no código. Isso porque a opção cp diz à JVM onde o arquivo A.class tem que estar.
[]s
Gunnar
Essa forma de EXECUTAR é quando você quer criar uma propriedade no sistema via linha de comando. Se você tiver uma aplicação que registra ou lê algo do sistema isso é uma forma de criar a propriedade. Outra forma é criar via código, igual foi feito com a propriedade GK.
[]s
Gunnar
tentei executar java -Dteste=teste System.S1
e não conseguir da erro falando que não encontro o main
o que se que e´
[quote=Raff]tentei executar java -Dteste=teste System.S1
e não conseguir da erro falando que não encontro o main
o que se que e´[/quote]
Você colocou o arquivo S1.java dentro do diretório System? Porque a classe S1 pertence ao pacote System. Para isso o diretório superior tem que ser System.
[]s
Gunnar
nossa eu não sei por que eu to com tanta dificuldade nisso cara !! tah muito dificil para mim!
Por favor pessoal me ajude igual o gunnar fez
eu não to conseguindo entender
valew !
Raff
Explica denovo o que você esta com dificuldade…
[]s
Gunnar
eu não consigo entender como usar -D… e isso -d e tbm o -cp … por mais que você me explicou gunnar eu não to conseguindo visualizar isso muito bem
perdão a ignorancia!
Tenta “compilar” com linha de prompt e vc vai entender -.-
Ralf o capitulo 10 é meio obscuro mesmo. Aconselho tu ir pra prática q vai te clarear. Ta acontecendo isso comigo tbm. Mas já deu uma clareadazinha. Mas não muito.
-D define uma propriedade.
-d define o diretório onde serão criados os .class
-cp define o classpath
Qual a dificuldade?
shuenemann é que eu nunca tinha usado isso antes cara mas eu to apanhando !
hehe eu fiz o exame sem saber isso… apenas tentei aprender o -classpath e o -d pq sabia que ia aparecer umas 2 questoes a respeito… e tb a parte teorica q tem nesse cap sobre jar.
Bom -d significa destino aonde seu .class vai. So aprendi isso apos o exame estudando servlet e jsp… head first… auhuha
um exemplo:
lei isso assim: coloque meu .class dentro do diretorio classes que está um nivel antes.
hieraquia:
c:\exemplo\classes
c:\exemplo\src
no prompt vc deve estar em
c:\exemplo
e digitar:
agora a respeito do classpath eu acho ele meio confuso ate hj e prefiro configurar as variaveis de ambiente… no exame eu chutei…
flw! espero ter ajudado
ajudo sim cara
eu vou fazer isso tbm chuta
!!!
melhor coisa 
Tudo bem, é que você não diz exatamente o que não entendeu :mrgreen:
Olá galera!!!
Alguém tem interresse em trocar o livro,
Java: Como Programar - HARVEY M. DEITEL & PAUL J. DEITEL 6 edição (novo) , pelo livro de certificação SCJP: Certificação Sun para Programador Java 5 - Guia de Estudo?
Estou precisando para certificação.
Valeu!