Tengo 3 archivos jar y un archivo .java que depende de estos archivos jar. ¿Cómo compilo el archivo .java con estos archivos jar usando un símbolo del sistema?
java -cp ".;magic.jar" Foo
está bien, java Foo -cp ".;magic.jar"
no.
Tengo 3 archivos jar y un archivo .java que depende de estos archivos jar. ¿Cómo compilo el archivo .java con estos archivos jar usando un símbolo del sistema?
java -cp ".;magic.jar" Foo
está bien, java Foo -cp ".;magic.jar"
no.
Respuestas:
Puede incluir sus archivos jar en el comando "javac" usando la opción "-cp".
javac -cp ".:/home/path/mail.jar:/home/path/servlet.jar;" MyJavaFile.java
En lugar de "-cp", también puede utilizar "-classpath"
javac -classpath ".:/home/path/mail.jar:/home/path/servlet.jar:" MyJavaFile.java
Puede incluir los archivos jar cada vez que compile configurando la variable de entorno "CLASSPATH" correctamente. La variable de entorno almacenará la ruta donde se encuentran los archivos jar y las clases que se deben usar para compilar / ejecutar cualquier archivo java. No tendrá que incluir los frascos individualmente cada vez que compile su archivo.
Las diferentes máquinas tienen diferentes métodos para establecer la ruta de clase como una variable de entorno. Los comandos para Windows, Linux, etc. son diferentes.
Puede encontrar más detalles en este blog .
http://javarevisited.blogspot.com/2011/01/how-classpath-work-in-java.html
javac -classpath ".:/home/path/mail.jar;/home/path/servlet.jar" MyJavaFile.java
trabajó para mi. Estaba usando mac. Leí en alguna parte que ':' se usa para Unix.
.:
hacer? lo siento si es una pregunta tonta, pero no es obvia para mí.
javac -cp .:/home/path/mail.jar:/home/path/servlet.jar; MyJavaFile.java
Pruébelo en Linux
javac -cp jarfile source file
EJEMPLO: -
javac -cp .:/jars/* com/template/*.java
.:/jars
reemplazado con el directorio en el que se encuentran mis archivos JAR, aparece el mensaje de error javac: invalid flag: /location/of/first/jar/file.jar
.
La sintaxis funcionará en el comando DOS de Windows:
javac -cp ".;first.jar;second.jar;third.jar" MyJavaFile.java
Intente agregar todos los archivos jar de dependencia a su ruta de clases a través de la configuración de variables de entorno o siga los pasos a continuación:
Establezca la ruta de clase para sus archivos jar de dependencia como se muestra a continuación:
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;
Ahora, puede compilar su archivo java. (comando: javac YourJavaFile.java
)
Espero que esto resuelva su problema de dependencia.
Los siguientes son pasos,
Copie todos los archivos jar y su archivo .java en una misma carpeta (será fácil mencionar los nombres de los archivos en lugar de mencionar la ruta larga. Aunque puede mantener jar y .java en carpetas separadas).
Compilar,
javac -cp .:<file_1_name>.jar:<file_2_name>.jar <prog_name>.java
Ejecutar,
java -cp .:<file_1_name>.jar:<file_2_name>.jar <prog_name>
¡Espero que esto ayude!
Esto creará un archivo .class:
javac -classpath "[jarname with specified path]" [java filename]
Esto ejecutará el archivo de clase:
java -cp [jarname with specified path]: [java filename]
javac -classpath "/home/scorncer/Downloads/spark-core-2.3.jar" MyFile.java
y ** ejecutar 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
Debe especificar las dependencias en tiempo de compilación y en tiempo de ejecución
Para compilar use este formato
javac -cp "*.jar;classfile_path" filename.java
Ejemplo:
javac -cp "ojdbc6.jar;c:\programs" Main.java
javac -cp jars/jar1:jars/jar2:jars/jar3 abc.java
Si está usando Ubuntu:
/opt/JavaServices/sqlite $ export CLASSPATH=/opt/JarFiles/XXXX.jar:/opt/JarFiles/XXXX.jar:/opt/JavaServices/;javac SQLiteSample.java
Ir a la ubicación de la carpeta (fuera de la estructura del paquete)
/opt/JavaServices $ export CLASSPATH=/opt/JarFiles/XXXXX.jar:/opt/JarFiles/XXXXX.jar:/opt/JavaServices/;java sqlite.SQLiteSample
Nota: consulte las ubicaciones de los archivos y los nombres de los paquetes
Para ventanas