【问题标题】:maven external jar dependencymaven 外部 jar 依赖
【发布时间】:2015-10-03 19:14:11
【问题描述】:

我正在尝试在我的代码中使用老师给的罐子。所以我将 jar 放在项目的 lib 目录中并运行此命令:

mvn install:install-file -Dfile=lib/IDLogger.jar -DgroupId=IDLogger -DartifactId=IDLogger -Dversion=1.0 -Dpackaging=jar

一切都很好。

然后我将依赖添加到 pom 中:

<dependency>
   <groupId>IDLogger</groupId>
   <artifactId>IDLogger</artifactId>
   <version>1.0</version>
   <scope>compile</scope>
</dependency>

但是当我尝试使用 jar 时,编译失败并告诉我找不到符号(类)。我什至尝试添加一个导入语句:

import IDLogger.IDLogger;

但它告诉我没有这样的包。

如何在 maven 的代码中使用这个 jar?

这是代码:

IDLogger logger = IDLogger.getInstance(); 

...

logger.logID(id); 

我得到符号IDLogger not found 错误

这就是我对这个自定义 jar 的了解...

【问题讨论】:

  • import语句由java包名和java类名组成,与maven依赖的groupId和artifactId无关。您提到的导入仅在您想使用 IDLogger 包中的 IDLogger 类时才有效。该错误看起来像您没有导入正确的类。什么代码会导致错误?
  • 编辑添加代码
  • 您使用的是 IDE 吗?它在命令行上编译吗?
  • 好的,感谢 hotzst 我能够找到包 (ca.etsmtl.log.util.IDLogger)
  • @AntoineLev 你如何运行它?如果你想从 maven 运行它,你应该使用 maven exec 插件。如果你只是手动运行你的jar,你需要在命令行选项中将老师的jar添加到java类路径中。

标签: java maven import


【解决方案1】:

尝试在系统范围内添加你的库:

1. add in your project :

    Your Project/lib 
                +IDLogger.jar

2. in your pom :

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-10
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-19
    • 2012-12-01
    相关资源
    最近更新 更多