【问题标题】:Importing External jar Causes Issue导入外部 jar 导致问题
【发布时间】:2020-06-29 20:54:26
【问题描述】:

我已使用此命令将我的 jar 推送到 maven 存储库。(使用 mvn clean install 创建的 jar)

mvn install:install-file -Dfile=abc-model-1.0-SNAPSHOT.jar -DgroupId=com.abc -DartifactId=abc-model -Dversion=1.0-SNAPSHOT -Dpackaging=jar -DgeneratePom=true

成功将 jar 添加到本地 mvn 存储库后,我添加了以下内容作为我要使用它的依赖项。

 <dependency>
       <groupId>com.abc</groupId>
       <artifactId>abc-model</artifactId>
       <version>1.0-SNAPSHOT</version>
 </dependency>

但我无法访问 jar 中的包。而且它也不在外部库中。 我有一些模型类,我想做的是在不同的项目中使用它们。

【问题讨论】:

  • 请告诉我们您在构建时遇到的错误,例如mvn clean verify.
  • 没有错误。我的依赖没有加载到外部库。
  • 如果您可以使用mvn clean install 构建而不会出错,那么所有必要的库都在那里。可能是 Eclipse 或 IntelliJ 没有显示它们,但那是另一回事了。

标签: java maven dependencies


【解决方案1】:

终于,我找到了问题所在。这可能会受到 2 种方式的影响。

  1. 我已经使用 IntelliJ 终端来构建项目。但它没有用。但是当我使用 CMD(终端)时,它按预期工作。

还有

以前我使用该依赖项如下。在 Scope Compile 中是默认的。但是在我添加范围之后,它才按预期工作。我不能说这件事的确切原因。

    <dependency>
        <groupId>com.abc.models</groupId>
        <artifactId>abc-model</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>

忘记给出范围。像这样添加范围后,它起作用了。

    <dependency>
        <groupId>com.abc.models</groupId>
        <artifactId>abc-model</artifactId>
        <version>1.0-SNAPSHOT</version>
        <scope>compile</scope>
    </dependency>

【讨论】:

  • 不,这不是问题所在。如果不指定范围,则范围自动为compile。我敢打赌,如果您删除范围,它仍然有效。
  • 并且也使用 CMD(Terminal) 而不是 IDE 终端将解决这个问题
猜你喜欢
  • 2011-05-24
  • 1970-01-01
  • 2014-09-03
  • 2013-05-22
  • 2011-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多