gpt4 book ai didi

java - Maven 错误 : package does not exist

转载 作者:搜寻专家 更新时间:2023-11-01 03:51:08 25 4
gpt4 key购买 nike

我可以在我的本地机器上构建我的 java 项目,它使用 maven 成功构建。但是,当我在 Jenkins 机器上构建它时,出现编译错误:

package javax.jms does not exist

这是什么意思?它在哪里寻找 javax.jms?在本地 m2 仓库中,类路径?

我必须对我的 pom.xml 进行以下更改才能使其在 Linux 上运行:

a) 明确说明 maven-site-plugin 版本为 2.1。 org.apache.maven.插件 maven 站点插件 2.1

b) 将 maven-surefire-plugin 版本从 2.4.3 更改为 2.18.1 maven-surefire-插件 2.18.1

c) 添加了以下依赖项:

     <dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.4</version>
</dependency>

<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.2</version>
</dependency>

<dependency>
<groupId>com.xx.yyy</groupId>
<artifactId>jms</artifactId>
<version>1.1</version>
</dependency>

<dependency>
<groupId>com.xx.yyy</groupId>
<artifactId>orm</artifactId>
<version>3.1.0.5</version>
</dependency>

<dependency>
<groupId>org.springframework.ldap</groupId>
<artifactId>spring-ldap-core</artifactId>
<version>1.3.0.RELEASE</version>
</dependency>

为什么我必须在 Linux 上更改 pom.xml。该构建在我的 Windows 7 机器上运行,无需更改 pom.xml。

最佳答案

首先,尝试检查您是否有正确的 Maven 依赖项来获取 javax.jms包。你可以试试Apache Geronimo依赖性或 JavaEE API . (引用:What is the right Maven dependency for javax.jms.* classes?)

对于 Apache Geronimo

  <dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jms_1.1_spec</artifactId>
<version>1.1.1</version>
</dependency>

对于 JavaEE API

   <dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>

此外,请确保您在 Jenkins 上构建您的应用程序具有以下目标:

mvn clean install

在使用 Maven 构建应用程序之后在 Jenkins机器,包应该出现在本地 m2 repo对于 Jenkins .

关于java - Maven 错误 : package does not exist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27637877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com