[英]Java 11 without modularity: package does not exist while it is added as maven dependency
[英]maven build is failing due to dependency package does not exist while dependency package actually exists
我在 Eclipse 中有兩個 spring-boot 項目。
keygenerator-service 依賴於 commons-lib,所以我首先構建了 commons-lib 並且在 m2 文件夾中成功創建了 jar。 然后我提到了對 keygenerator-service 的 pom.xml 文件的依賴,如下所示。
<dependency>
<groupId>com.abz</groupId>
<artifactId>commons-lib</artifactId>
<version>1.0.0</version>
</dependency>
jar 文件顯示為 C:\\Users\\snsur.m2\\repository\\com\\abz\\commons-lib\\1.0.0\\commons-lib-1.0.0.jar 並且看起來不錯。
但是現在,當我嘗試對 keygenerator-service 進行 maven 構建時,出現以下錯誤:
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /C:/Drive D/Projects/workspace-backend/workspace1/keygenerator-service/src/main/java/com/abz/keygenerator/core/KeyStore.java:[13,33] package com.abz.commons.exception does not exist
[ERROR] /C:/Drive D/Projects/workspace-backend/workspace1/keygenerator-service/src/main/java/com/abz/keygenerator/core/KeyStore.java:[14,33] package com.abz.commons.exception does not exist
我也可以看到該包存在於 jar 文件中。
C:\Users\snsur\Documents\Work\SWs\jdk-11.0.11\bin>jar tvf C:\Users\snsur\.m2\repository\com\abz\commons-lib\1.0.0\commons-lib-1.0.0.jar
0 Thu Jul 29 21:33:44 IST 2021 META-INF/
358 Thu Jul 29 21:33:44 IST 2021 META-INF/MANIFEST.MF
.....
0 Thu Jul 29 21:33:46 IST 2021 BOOT-INF/classes/com/abz/commons/exception/
0 Thu Jul 29 21:33:46 IST 2021 BOOT-INF/classes/com/abz/commons/model/
INF/classes/com/abz/commons/exception/AlreadyExistsException.class
INF/classes/com/abz/commons/exception/InvalidDataException.class
我已經針對此類問題檢查了許多 stackoverflow 鏈接,但沒有任何效果對我有用。 我什至刪除了 .m2 文件夾並重新構建了 commons-lib 項目,但仍然沒有運氣。
請幫助我使用 commons-lib jar 成功構建密鑰生成器服務。
這是一個可運行的 Spring Boot jar。
使其可運行會破壞其用作依賴項的能力(注意路徑前綴)
修復:僅對您要運行的最終 jar 執行此操作。
從 Thorbjorn 得到建議后,我在 commons-lib pom.xml 中解決了這個問題
(對於彈簧靴 2.x)
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<id>repackage</id>
<configuration>
<classifier>exec</classifier>
</configuration>
</execution>
</executions>
</plugin>
現在它作為依賴/庫工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.