这是我学习Maven的头几天,我仍在努力学习基础知识.我有外感.jar文件(在公共回购协议中不可用),我需要在我的项目中引用它,我正试图找出我最好的 Select 是什么.

这是一个小规模的项目,没有库的中央存储库,所以它必须是本地存储库(不知何故添加到源代码管理中,不知道它是否应该这样工作?)或者.jar需要存储在任何正式存储库之外的磁盘上.

1) 我最好的 Select 是什么.考虑到我希望项目和库都处于源代码控制中,我用maven将jar文件添加到我的项目的引用中?

2)我似乎仍然不能让Eclipse看到依赖项.我手动将其添加到pom的部分,它在m2eclipse的依赖项列表中显示得很好.MVN编译和MVN包都成功,但运行该程序会导致:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:
        LibraryStuff cannot be resolved to a type

这是在将POM表编辑为:

<dependency>
  <groupId>stuff</groupId>
  <artifactId>library</artifactId>
  <version>1.0</version>
  <systemPath>${lib.location}/MyLibrary.jar</systemPath>
  <scope>system</scope>
</dependency>

即使我已经有了pom,我是否应该执行mvn install:install文件呢.如上所述编辑的xml?

谢谢!

推荐答案

我认为您应该使用mvn install:install-file将库JAR填充到您的本地存储库,然后您应该将范围从SYSTEM更改为COMPILE.

如果你从maven开始,我建议直接使用maven,而不是IDE插件,因为它增加了一层额外的复杂性.

至于错误,您是否在类路径上放置了所需的JAR?如果要使用库中的类型,还需要在运行时访问它.这与maven本身无关.

我不明白你为什么要将库置于源代码控制之下——它是用于源代码而不是二进制JAR.

Java相关问答推荐

java.lang. StackOverFlow错误:显示表及其依赖项时为空

将linkedHashMap扩展到Java中的POJO类

Java Streams在矩阵遍历中的性能影响

为什么一个Test的instance?& gt;在构造函数中接受非空对象?

是否在允许数组元素为空时阻止 idea 为空性警告?

相同的Java SerializedLambda为implMethodKind返回不同的结果

计算两个浮点数之间的距离是否对称?

多重延迟签名

声明MessageChannel Bean的首选方式

继续收到错误SQLJDBC EXCEPTION执行";org.springframework.dao.InvalidDataAccessResourceUsageException:&

为什么当我创建Robot对象时,JavaFX引发IlLegalStateException异常?

Lombok@Nonnull是否也对供应商有影响?

如何在Spring Boot中创建可以将值传递给配置的&Enable&Quot;注释?

Regex以查找不包含捕获组的行

IntelliJ IDEA依赖项工具窗口丢失

项目react 堆中doOnComplete()和Subscribe()的第三个参数之间的差异

为什么我的登录终结点不能被任何请求访问?

Bash数组的单引号元素并使用空格连接

ResponseEntity.控制器截断响应的JSON部分

Java 21保护模式的穷尽性