Tax*_*Noi 9 java intellij-idea maven
我有一个模块的pom文件是:
<groupId>com.mycompany.Common</groupId>
<artifactId>common</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<name>common module</name>
Run Code Online (Sandbox Code Playgroud)
在该工件('common')中,我有一个名为com.mycompany.common.objects的包.在使用包中,我的pom文件是:
<dependency>
<groupId>com.mycompany.Common</groupId>
<artifactId>common</artifactId>
<version>1.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
Run Code Online (Sandbox Code Playgroud)
当我运行mvn install时,它总是抱怨:包com.mycompany.common.objects不存在.
我尝试在错误所在的类中进行显式导入:
import com.mycompany.common.objects
Run Code Online (Sandbox Code Playgroud)
没运气.我在IDE(IntelliJ)和命令行中都尝试过.任何的想法?谢谢
从您的示例中,我们看不到包含com.mycompany.common.objects您正在使用的包的任何工件.
您正在添加依赖项com.mycompany.Common:common作为POM(并且您声明com.mycompany.Common的包装:也常见为POM).如果它实际上是包含您需要使用的包的JAR工件,packaging则从POM和依赖项中删除(这意味着使用默认值JAR).
使用 IntellijIDEA 时,生成的文件可能会导致此问题。写作
mvn idea:idea
Run Code Online (Sandbox Code Playgroud)
在 IntellijIDEA Maven 控制台上重置这些文件对我有用。另请参阅: intelliJ 中的包不存在错误
对于那些为此而苦苦挣扎而又不熟悉java的人,请确保所述软件包存在于本地存储库中。Maven有一个本地存储库~/.m2,其中安装了软件包以供本地访问,因此即使您的依赖项软件包在项目中正确声明为依赖项pom.xml并在项目中编译并存在,如果它在本地存储库中不存在,mvn compile也会触发一个"package does not exist"错误。
要解决此问题:
在缺少的包文件夹中,执行以下操作:
mvn install //--> this will package and install your missing package in the local repo
然后在您要编译的项目中:
mvn compile // --> now that the missing package is in the local repo it should work
| 归档时间: |
|
| 查看次数: |
42477 次 |
| 最近记录: |