簡體   English   中英

為什么我的 jar 庫中有未解析的符號?

[英]Why do I have unresolved symbols that should be in my jar library?

Gradle v2.9(舊的我知道,但升級是另一個項目)

我看到了如何創建自己的 java 庫(API)? 我正在做類似的事情。

我對 JARs 和編譯 Java 代碼非常熟悉。 我也有 Maven 的經驗,我正在嘗試在 Gradle 中做到這一點,但基本原理應該是一樣的。

我想創建一個包含其他庫的庫。 所以我有這個build.gradle文件

myLib/build.gradle:
dependencies {
  compile "com.someDomain:other-lib:1.0.0"
}

我可以毫無問題地構建myLib-1.1.0.jar ,並將其部署到我的倉庫中

artifactId: myLib
groupId: com.myDomain
version: 1.1.0

現在我想使用myLib.jar來構建另一個組件myComp.war ,所以我有了這個

myComp/build.gradle:
dependencies {
  compile "com.myDomain:myLib:1.1.0"
}

所以我的依賴樹如下,意思是myComp使用了myLib庫,而myLib又使用了other-lib庫。 夠直截了當。

com.myDomain:myComp:1.2.0
+--- com.myDomain:myLib:1.1.0
|    +--- com.someDomain:other-lib:1.0.0  <---- the symbol is in this library

當我為myComp運行./gradlew build時,我看到myLib-1.1.0.jarother-lib-1.0.0.jar工件正在從我的中央倉庫下載,並存儲在我的~/.gradle緩存中但是,對於myLib.jar文件中包含的other-lib.jar中的符號,我收到symbol not found錯誤。 說得通?

我錯過了什么?

因為構建 jar 僅歸檔該項目的源代碼樹中的文件,所以它不包括編譯所依賴的 jars。 到 jar 中的 package 其他 jars ,就像我想做的那樣,請按照如何在 Z68490Z4? 來自 Gradle 論壇。

暫無
暫無

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

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