Eu tenho 3 arquivos jar e um arquivo .java que depende desses arquivos jar. Como compilar o arquivo .java com esses arquivos jar usando um prompt de comando?
java
jar
command-prompt
user1177567
fonte
fonte
java -cp ".;magic.jar" Foo
está okjava Foo -cp ".;magic.jar"
não é.Respostas:
Você pode incluir seus arquivos jar no comando "javac" usando a opção "-cp".
Em vez de "-cp", você também pode usar "-classpath"
Você pode incluir os jars toda vez que compilar, configurando a variável de ambiente "CLASSPATH" corretamente. A variável de ambiente armazenará o caminho em que os jars e classes que precisam ser usados para compilar / executar qualquer arquivo java. Você não precisará incluir os frascos individualmente toda vez que compilar seu arquivo.
Máquinas diferentes têm métodos diferentes para definir o caminho de classe como uma variável de ambiente. Os comandos para Windows, Linux, etc são diferentes.
Você pode encontrar mais detalhes neste blog .
fonte
javac -classpath ".:/home/path/mail.jar;/home/path/servlet.jar" MyJavaFile.java
trabalhou para mim. Eu estava usando mac. Eu li em algum lugar que ':' é usado para unix..:
faz? desculpe se é uma pergunta idiota, mas não é óbvio para mim.javac -cp .:/home/path/mail.jar:/home/path/servlet.jar; MyJavaFile.java
Por favor, tente no Linux
EXEMPLO: -
fonte
.:/jars
substituído pelo diretório em que meus arquivos JAR estão localizados, recebo a mensagem de errojavac: invalid flag: /location/of/first/jar/file.jar
.A sintaxe funcionará no comando windows dos:
fonte
Tente adicionar todos os arquivos jar de dependência ao caminho da sua classe por meio de configurações de variáveis de ambiente ou use as etapas abaixo:
Defina o caminho da classe para seus arquivos jar de dependência, conforme mostrado abaixo:
set classpath=C:\Users\sarath_sivan\Desktop\jars\servlet-api.jar; C:\Users\sarath_sivan\Desktop\jars\spring-jdbc-3.0.2.RELEASE; C:\Users\sarath_sivan\Desktop\jars\spring-aop-3.0.2.RELEASE;
Agora, você pode compilar seu arquivo java. (comando
javac YourJavaFile.java
:)Espero que isso resolva seu problema de dependência.
fonte
Os seguintes são passos,
Copie todos os jars e seu arquivo .java na mesma pasta (será fácil mencionar nomes de arquivos em vez de mencionar o caminho longo. Embora você possa manter jar e .java em pastas separadas).
Compilar,
Executar,
Eu espero que isso ajude!
fonte
Isso criará o arquivo .class:
Isso executará o arquivo de classe:
fonte
javac -classpath "/home/scorncer/Downloads/spark-core-2.3.jar" MyFile.java
e correr **java -cp /home/scorncer/Downloads/spark-core-2.3.jar: MyFile.java also i tried java -cp /home/scorncer/Downloads/spark-core-2.3.jar: MyFile
Tente isto.
fonte
Você precisa especificar as dependências no tempo de compilação e no tempo de execução
Para compilar, use este formato
Exemplo:
fonte
algumas vezes fazendo as seguintes alterações funcionarem:
Nota: NO Windows. Para linux, use
$CLASSPATH
.fonte
fonte
Se você estiver usando o Ubuntu:
Ir para o local da pasta (estrutura fora do pacote)
Nota: Consulte os locais dos arquivos e os nomes dos pacotes
fonte
Para Windows
fonte