3

我想使用 Jmathplot.jar

我试图把它作为一个依赖

<dependency>
      <groupId>jmathplot</groupId>
      <artifactId>jmathplot</artifactId>
      <version>1.0</version>
      <scope>system</scope>
      <systemPath>${project.basedir}/lib/jmathplot.jar</systemPath>
    </dependency>

但是在安装时出现此错误:

Some problems were encountered while building the effective model for com.NResearch:dable-start-tRisk:jar:0.1-SNAPSHOT 
[WARNING] 'dependencies.dependency.systemPath' for jmathplot:jmathplot:jar should not point at files within the project directory, ${project.basedir}/lib/jmathplot.jar will be unresolvable by dependent projects @ line 44, column 19 

请问我该如何解决?

编辑1:

我无法更改 Maven 以将所有依赖的 jar 包含到一个 jar 中。因为这是上传到一个网络项目。

4

2 回答 2

1

“Dependent”正在使用您的项目,“dependency”正在使用您的项目。

这里真正的错误jmathplot.jar是在一个文件夹中,只有你的项目才能可靠地找到。即使您的家属知道如何在本地存储库中找到您的工件,他们也不知道您的工件的来源在哪里,因此无法找到lib/jmathplot.jar. 您可以通过将 更改systemPath为绝对路径来解决此问题。它仍然可以参数化,但请使用properties而不是隐式属性(例如${project.basedir}.

最好systemPath通过安装到公司存储库中来摆脱依赖关系,jmathplot这样它就可以像“普通”工件一样使用。但是,如果您必须将工件分发到公司存储库无法访问的地方,那么这可能不是一个有用的选择。jmathplot如果只是部署到 Maven 中央存储库,那就更好了。

作为最后的手段,您可以选择捆绑依赖项(而不是依赖项)。你可以这样做:

于 2013-10-28T17:27:46.473 回答
-1

最好的方法是在本地存储库上安装您的依赖项。去做这个:

1)使用项目源,使用 mvn install 安装到本地存储库

2)如果您没有源代码,请使用此安装到本地存储库

希望有帮助

nota:你在围绕这个问题发垃圾邮件,是吗?(请参阅此处:JMathPlot 什么是 Maven 依赖代码

于 2013-10-28T17:21:08.113 回答