java - 在 Maven 项目中包含本地 jar 文件 - 未找到文件

标签 java maven intellij-idea jar pom.xml

因此,我尝试将两个本地 jar 文件包含到我拥有的 Maven 项目中,但未能成功。我尝试过解决这些线程中的解决方案:1 2但它仍然没有真正发挥作用。以下是我的 pom.xml 文件的关键部分:

    <repository>
        <id>local-maven-repo</id>
        <url>file://${basedir}/resources</url>
    </repository>

然后是依赖项:

    <dependency>
        <groupId>edu.mlab.jar1</groupId>
        <artifactId>jar1_local</artifactId>
        <version>1.0</version>
    </dependency>

    <dependency>
        <groupId>edu.mlab.jar2</groupId>
        <artifactId>jar2_local</artifactId>
        <version>1.0</version>
    </dependency>

这两个 jar 文件分别包含 edu.mlab.jar1edu.mlab.jar2 处的包声明,因此这就是我想要的位置。 jar 文件位于 resources 文件夹中,就在基本目录下。

这就是设置。现在,当我尝试 mvn package (在 mvn clean 之后)时,我收到以下错误

[错误] 无法在项目 PROJECT 上执行目标:无法解析项目 edu.mlab.project:PROJECT:war:1.0-SNAPSHOT 的依赖项:无法解析以下 Artifact :edu.mlab.jar1 :jar1_local:jar:1.0,edu.mlab.jar2:jar2_local:jar:1.0:在文件中找不到edu.mlab.jar1:jar1_local:jar:1.0:///Users/mlab/Desktop/2016/project_web/resources已缓存在本地存储库中,直到 local-maven-repo 的更新间隔已过或强制更新时,才会重新尝试解析 -> [帮助 1]

我不太确定出了什么问题,因为我的 jar1 和 jar2 正好位于资源文件夹中。另外,我尝试了在系统范围内导入它们的方法,但这对我的目的不起作用,因为我希望它们包含在 war Artifact 中。

非常感谢!

最佳答案

  1. 首先尝试使用以下命令将这两个 jar 文件安装到 Maven 的本地存储库
<小时/>
mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file  -Dfile=path-to-your-artifact-jar \
                                                                              -DgroupId=your.groupId \
                                                                              -DartifactId=your-artifactId \
                                                                              -Dversion=version \
                                                                              -Dpackaging=jar \
                                                                              -DlocalRepositoryPath=path-to-specific-local-repo

引用网址:http://maven.apache.org/plugins/maven-install-plugin/examples/specific-local-repo.html

注意:您的本地 Maven 存储库在安装 $M2_HOME\conf\settings.xml 中指定,例如

<localRepository>C:\local_maven_repo</localRepository>
  • 然后使用常规的Maven标签

    <dependency>
        <groupId>your.groupId</groupId>
        <artifactId>your-artifactId</artifactId>
        <version>your-version</version>
    </dependency> 
    
  • 关于java - 在 Maven 项目中包含本地 jar 文件 - 未找到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38382889/

    相关文章:

    java - Android Gradle 异常 : "Multiple dex files define", exploded-aar 下的重复类

    java - 如何在文本字段中隐藏密码字符

    java - Eclipse 无法解析 maven 项目中的 akka 引用

    java - Mac IntelliJ 光标样式/类型没有改变(保持默认)

    Java 使用 substring() 反转 String

    Java:图像、图形和面板

    eclipse - 如何使用 m2e-wtp 将生成的资源部署到 tomcat?

    java - 如何在 Maven 构建期间删除/排除 Log4j?

    java - Intellij-IDEA 是否可以配置为中断 JUnit 测试中的异常,从而导致测试失败?

    java - 将 Java 项目克隆到 IntelliJ ,现在我看不到任何源文件