How to compile a java project with an external jar file in a Linux terminal

I have a project that includes an external jar file in it, I followed this link http://www.wikihow.com/Add-JARs-to-Project-Build-Paths-in-Eclipse-%28Java%29 to add the external Java path. Then I tried to compile my code in the terminal, but I still get the error message that the jar file does not exist.

I wrote the following commands: (Currently, I got into the project directory and there are three folders called bin src and lib)

bash-3.2$ ls
bin  lib  README.txt  src
bash-3.2$ javac -cp lib/jsoup-1.6.1.jar src/DayTradingStockBlog.java
bash-3.2$ java -cp .:lib/jsoup-1.6.1.jar src/DayTradingStockBlog
Exception in thread "main" java.lang.NoClassDefFoundError: src/DayTradingStockBlog (wrong name: DayTradingStockBlog)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: src/DayTradingStockBlog.  Program will exit.

How do I solve this problem?

+5
source share
4 answers

, , java ( javac). src - , , , :

 java -cp .:lib/jsoup-1.6.1.jar src/DayTradingStockBlog

:

 java -cp .:lib/jsoup-1.6.1.jar src.DayTradingStockBlog

, , , :

 java -cp .:lib/jsoup-1.6.1.jar:./src DayTradingStockBlog

, - .

foo ( , src), DayTradingStockBlog, foo.DayTradingStockBlog.

+9

, . ,

java -cp '.:lib/jsoup-1.6.1.jar' src/myClass.

linux (:) Windows (;).

+2

classpath (-cp)

javac -cp %YOUR_JAR_LOCATION% myClass.java 
+1
source

you have to put the java file and the jar file in the same directory Example: javac -cp jdbc.jar myClass.java it works for me

-2
source

All Articles