[英]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.