如何使用java11创建jenkins插件

问题描述 投票:0回答:1

我用java11和maven项目创建jenkins插件但收到错误: -

[错误]无法在项目abcdef上执行目标org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M2:enforce(display-info):目标org.apache.maven.plugins的执行显示信息:maven-enforcer-plugin:3.0.0-M2:强制执行失败:给出了未知的JDK版本。应该像“1.7”,“8”,“11”,“12”

URL中提到的后续步骤: - https://wiki.jenkins.io/display/JENKINS/Java+11+Developer+Guidelines

<parent>
 <groupId>org.jenkins-ci.plugins</groupId>
 <artifactId>plugin</artifactId>
 <version>3.42</version>
</parent>

<properties>
 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 <java.level>11</java.level>
</properties>

<dependencies>
 <dependency>
  <groupId>org.jenkins-ci.main</groupId>
  <artifactId>jenkins-core</artifactId>
  <version>2.173</version>
 </dependency>
</dependencies>

还遵循jenkins hello world插件中的上述步骤并收到相同的错误。根据URL中提到的细节,jenkins支持java11,所以期望.hpi文件应该用java11创建。

maven jenkins-plugins java-11
1个回答
0
投票

我通过更改pom.xml修复了上述错误,如下所示:

<build>
 <plugins>
  <plugin>
   <artifactId>maven-enforcer-plugin</artifactId>
   <executions>
    <execution>
     <id>display-info</id>
     <phase>validate</phase>
     <goals>
      <goal>display-info</goal>
     <goal>enforce</goal>
    </goals>
    <configuration>
     <rules>
      <requireJavaVersion>
       <version>11</version>
      </requireJavaVersion>
      <enforceBytecodeVersion>
       <maxJdkVersion>11</maxJdkVersion>
      </enforceBytecodeVersion>
     </rules>
    </configuration>
   </execution>
  </executions>
 </plugin>
 <plugin>
  <artifactId>maven-compiler-plugin</artifactId>
  <configuration>
   <source>11</source>
   <target>11</target>
   <testSource>11</testSource>
   <testTarget>11</testTarget>
  </configuration>
 </plugin>
</plugins>
</build>

现在收到新错误:[错误]无法执行目标org.kohsuke:access-modifier-checker:1.16:enforce(default-enforce)on project testingwhiz:执行default-enforce of goal org.kohsuke:access-modifier-checker: 1.16:强制执行失败。抛出:IllegalArgumentException

© www.soinside.com 2019 - 2024. All rights reserved.