首頁  >  文章  >  Java  >  從命令列運行時,如何解決 Maven 中的「NoClassDefFoundError」問題?

從命令列運行時,如何解決 Maven 中的「NoClassDefFoundError」問題?

Susan Sarandon
Susan Sarandon原創
2024-10-27 04:01:02820瀏覽

How can I resolve the

透過Shade 插件解決NoClassDefFoundError 的依賴關係

在第一次使用Maven 時,Eclipse 和命令列使用之間可能會出現不一致,原因是依賴管理。儘管在 Eclipse 中成功建立了 Maven 專案並新增了依賴項,但透過命令列執行專案可能會導致 NoClassDefFoundError。

預設情況下,Maven 會單獨打包依賴項,並且不會將它們包含在編譯的 JAR 檔案中。此遺漏會導致 Java VM 在執行期間嘗試定位庫類別時失敗。

maven-shade-plugin 提供了更有效的解決方案,而不是手動將程式庫新增至類別路徑。它創建一個“uber-JAR”,將應用程式類別與所需的庫程式碼組合在一起。

要達到此目的,請將以下外掛程式設定新增至您的POM :

新增此設定後,重新執行下列指令:

有關進階設定選項,例如指定包含的JAR 或可執行JAR 文件,請參閱maven-shade-plugin 網站上的「範例」部分。

以上是從命令列運行時,如何解決 Maven 中的「NoClassDefFoundError」問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn