簡體   English   中英

使用jar中的類路徑類使用javac和java進行編譯和運行

[英]Compile and run with javac and java using classpath classes in jar

我試圖通過命令提示符在Java中運行一個簡單的代碼。 我有一個包含以下內容的jar.java文件:

public class jar{

public void print()
{
System.out.println("Jar success accesing !");
}}

而且我還有一個main.java,它調用使用jar類:

public class main{

public static void main (String args[]){
jar jar1 = new jar();
jar1.print();
}}

我只是嘗試編譯jar.java,然后將其設為jar存檔,然后像下面這樣使用jar來編譯主類:

>javac jar.java
>jar cvf JAR.jar jar.class
>javac -cp JAR.jar main.java

現在,直到所有這些都可以正常運行,直到我要運行main,它還是無法正常工作:

>java -cp JAR.jar main

我得到這個:

Error: Could not find or load main class main.class
Caused by: java.lang.ClassNotFoundException: main.class

我哪里錯了?

答案是:

java  main

您不需要-cp,因為您將所有文件放在同一文件夾中。 您的代碼無效,因為您覆蓋了-cp (當前目錄)的默認值。 您的-cp僅指向JAR.jar。

類似的解決方案:

java -cp 'main.class;JAR.jar' main
java -cp '.;JAR.jar' main

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM