java - pom.xml 中的错误

标签 java maven pom.xml

我收到如下错误:

For dependency Dependency {groupId=weblogic, artifactId=webservices, version=9.2, type=jar}: system- scoped dependency must specify an absolute path system Path

不知道哪里出了问题。我配置了我在 pom.xml 中使用的环境变量

最佳答案

当使用 system 范围时,您必须提供依赖项的绝对路径(与在 Maven 存储库中搜索的任何其他依赖项相反)。参见 System Dependencies 依赖机制简介

例子:

<dependency>
  <groupId>javax.sql</groupId>
  <artifactId>jdbc-stdext</artifactId>
  <version>2.0</version>
  <scope>system</scope>
  <systemPath>${java.home}/lib/rt.jar</systemPath>
</dependency>

为什么不直接在本地/公司存储库中安装第三方 Artifact ?

编辑:如果您定义了 systemPath 但怀疑环境变量未解析,您将收到以下错误(注意路径中存在变量):

The project ... has 1 error
'dependencies.dependency.systemPath' for weblogic:webservices:jar must specify an absolute path but is ${env.BEA_HOME}/lib/xyz.jar @ line ...

但是如果 Maven 发现变量并正确解析它,上面引用的错误消息将包含已经解析的目录(不是占位符)。在 Ubuntu/Maven 3 上测试。

关于java - pom.xml 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6550319/

相关文章:

JavaParser - ArrayList 无法正确识别

java - 如何解决错误 "package org.springframework.web.bind.annotation does not exist"

java.lang.NoClassDefFoundError : com/fasterxml/jackson/core/util/DefaultIndenter

spring-boot - Spring Boot 2.3.X Maven项目如何使用父级POM?

Java - 将文本文件中的逗号分隔整数放入数组中

javascript - ESC POS 蓝牙打印机清除缓冲区

maven - 如何将 gradle 中的 groovy 任务转换为 Gradle Kotlin DSL 以生成 pom.xml?

java - 试图调用一个不存在的方法...纠正类路径

java - Gradle 将依赖项下载到缓存中而不是 Maven 存储库中

maven - 将我的 maven pom 拆分为不同的文件