Jenkins插件开发 - Maven问题:未知包装:hpi

Jon*_*edt 8 maven-3 jenkins jenkins-plugins

我正在尝试使用Mac OSX开始为Jenkins开发插件.

首先,当我运行'mvn hpi:create'时,下载所有文件需要相当长的时间,每个文件最多需要几分钟.这是很多文件.总时间是4-5小时!为什么这么慢?

然后,当我运行'mvn package'时,我收到此错误:

[ERROR]   
[ERROR]   The project org.sample.jenjondev:firstplugin:1.0-SNAPSHOT
(/Users/jonatanekstedt/Developer/jenkins/firstplugin/pom.xml) has 1 error
[ERROR]     Unknown packaging: hpi @ line 12, column 14
Run Code Online (Sandbox Code Playgroud)

为什么maven不知道hpi?我使用Maven 3.0.4.

这是我的pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:// 
    www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:// 
    maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
  <modelVersion>4.0.0</modelVersion> 
  <parent> 
    <groupId>org.jenkins-ci.plugins</groupId> 
    <artifactId>plugin</artifactId> 
    <version>1.448</version><!-- which Jenkins version is this plugin 
        built against? --> 
  </parent> 

  <groupId>org.sample.jenjondev</groupId> 
  <artifactId>firstplugin</artifactId> 
  <version>1.0-SNAPSHOT</version> 
  <packaging>hpi</packaging> 

  <repositories> 
    <repository> 
      <id>m.g.o-public</id> 
      <url>http://maven.glassfish.org/content/groups/public/</url> 
    </repository> 
  </repositories> 
  <pluginRepositories> 
    <pluginRepository> 
      <id>m.g.o-public</id> 
      <url>http://maven.glassfish.org/content/groups/public/</url> 
    </pluginRepository> 
  </pluginRepositories> 
</project> 
Run Code Online (Sandbox Code Playgroud)

我已将Jenkins的<version>更改为我的计算机上的版本,1.448.我该如何解决这个错误?

Jon*_*rns 5

它很慢,因为Maven Glassfish服务器目前已关闭,没有针对修复的ETA.詹金斯家伙已经设置了一个镜子,我们可以用它作为替代品.在你的pom.xml中,而不是m.g.o-publicrepos,使用:

<project>
...
<repositories>
    <repository>
        <id>repo.jenkins-ci.org</id>
        <url>http://repo.jenkins-ci.org/public/</url>
    </repository>
</repositories>

<pluginRepositories>
    <pluginRepository>
        <id>repo.jenkins-ci.org</id>
        <url>http://repo.jenkins-ci.org/public/</url>
    </pluginRepository>
</pluginRepositories>
 ...
</project>
Run Code Online (Sandbox Code Playgroud)

另外,.m2/settings.xml本教程顶部所示,向您添加详细信息,以允许使用短名称"hpi".