亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Gradle - 即使打包在 jar 中也無法加載 Java 類

Gradle - 即使打包在 jar 中也無法加載 Java 類

互換的青春 2023-03-23 16:18:29
我的 gradle 構建文件是plugins {    // Apply the java plugin to add support for Java    id 'java'    // Apply the application plugin to add support for building a CLI application    id 'application'}apply plugin: 'java'jar {    from configurations.runtime    manifest {        attributes(            'Created-By':'Gmack',            'Main-Class':'myapprunner.App',            'Class-Path':'mydaos-1.0.jar'        )    }}allprojects{  repositories {      jcenter()  }}subprojects {   version = '1.0'   apply plugin: 'java'}dependencies {    // This dependency is used by the application.    implementation 'com.google.guava:guava:27.1-jre'    // Use JUnit test framework    testImplementation 'junit:junit:4.12'    // Compile Project for dependency    compile project(':mydaos')}application {    // Define the main class for the application    mainClassName = 'myapprunner.App'}當我使用運行應用程序時java -jar myapprunner.jar我得到一個ClassNotFoundExceptionCaused by: java.lang.ClassNotFoundException: com.mydaos.Library    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)    ... 1 more我可以確認罐子已經裝好。不知道為什么這沒有解決問題。任何幫助,將不勝感激。
查看完整描述

2 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

插件java被應用了兩次,很可能是從(or )com.mydaos.Library中拉入的。假設項目未構建或類路徑錯誤。compile project(':mydaos')'Class-Path':'mydaos-1.0.jar'



查看完整回答
反對 回復 2023-03-23
?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

默認情況下,依賴類(項目/外部 jar)不會打包在你的 jar 中。

您正在使用將您的類、依賴項和執行腳本捆綁在一個 zip 中的應用程序插件,因此您應該使用它。該插件還向您的項目添加了一個“運行”任務,以通過 gradle 運行您的主類以用于開發目的。有關更多信息,請參閱應用程序插件文檔

如果您想將依賴項打包到您的 jar(稱為 uber jar)中,請參見此處。如果你這樣做,我建議你停止使用應用程序插件

'Class-Path':'mydaos-1.0.jar'

這假設它mydaos-1.0.jar位于您正在運行的同一文件夾中,java -jar ...但情況可能并非如此


查看完整回答
反對 回復 2023-03-23
  • 2 回答
  • 0 關注
  • 214 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號