簡體   English   中英

Java:從jar中加載類和引用的jar

[英]Java: Load classes and referenced jars from a jar

想象有一個jar(名為lib.jar ),其中包含一個類和清單文件。

該類是MyLibClass1。 MyLibClass1類包含單個公共靜態方法execute()。

清單文件中有一行“ Class-Path:”,它引用其他jar文件( jar1.jarjar2.jar

MANIFEST.MF在lib.jar的META-INF中,並且包含:

類路徑:jar1.jar jar2.jar

這些jar用於某些項目MyProject中,位於其libs目錄中。

該項目有一個主類Main和方法main ,只有1行:

MyLibClass1.execute();

問題是,當我嘗試調用主類MyProject的的,JVM說,這是不能夠找到MyLibClass1類lib.jar。

java -cp libs / *; bin主目錄

有什么建議么?

更新:

Java版本
Java版本“ 1.6.0_24”
Java(TM)SE運行時環境(內部版本1.6.0_24-b07)
Java HotSpot(TM)64位服務器VM(內部版本19.1-b02,混合模式)

libs文件夾包含lib.jarjar1.jarjar2.jar

關於Main.class在哪里有很好的評論。 實際上該類位於bin目錄中,因此我必須更改java執行命令。

java -cp libs / *; bin主目錄

如果當前目錄是bin ,則應運行java -cp ".;../libs/*" Main

嘗試在“ bin”之后添加分號。

java -cp libs/*;bin; Main

我已經通過從lib.jar文件中刪除清單來解決了這個問題。

因此有一個令人困惑的結論: jar的“類路徑:”隱藏了jar本身的類。

歡迎反對這一說法。

暫無
暫無

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

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