在Jenkins上设置Netbeans项目

时间:2013-07-09 13:13:30

标签: netbeans jenkins continuous-integration hudson

我有一个Netbeans项目,我正在尝试使用ant在Linux环境中使用Jenkins构建。 我已将CopyLibStack.jar复制到/var/lib/Jenkins/nblibs/并在ant任务中设置了以下属性:

-Dj2ee.server.home="/var/lib/jenkins/tomcat/" 
-Dlibs.CopyLibs.classpath=/var/lib/jenkins/nblibs/org-netbeans-modules-java-j2seproject-copylibstask.jar

但它不起作用;它在<copyfiles>任务

上失败

如果我在Windows上安装Jenkins并将属性设置为:

-Dj2ee.server.home="C:\Archivos de programa\Apache Software Foundation\Tomcat 6.0" 
-Dlibs.CopyLibs.classpath=C:\\.jenkins\\nblibs\\org-netbeans-modules-java-j2seproject-copylibstask.jar

项目构建没有问题

如果我使用以下命令从终端运行ant任务:

ant -file build.xml do-dist test -Dlibs.CopyLibs.classpath="/var/lib/jenkins/nblibs/copylibstask.jar" -Dj2ee.server.home="/var/lib/jenkins/tomcat/"

它建立得很好

我认为问题出在用户jenkins中,但我不知道如何修复它。

我该怎么办?

2 个答案:

答案 0 :(得分:1)

我有同样的问题,我已经修复了:)(我正在使用ubuntu 12.04)。在“.netbeans / 7.0”中找到build.properties并查找缺少的lib ...将其复制到project.properties

例如:

libs.CopyLibs.classpath = /选择/ netbeans的-7.0.1 / JAVA /蚂蚁/额外/ ORG-netbeans的模块-java的j2seproject-copylibstask.jar

libs.javaee-API-6.0.classpath = /选择/ netbeans的-7.0.1 /企业/模块/ EXT / JavaEE的-API-6.0.jar

答案 1 :(得分:0)

我在此link中找到了一个食谱,基本上,您必须在服务器上安装Netbeans,以便可以重用Netbeans生成的build.xml。 在与build.xml相同的级别上创建文件jenkins-build.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="BioGatewayWS Stub" default="build" basedir=".">
    <!-- create private folders -->
    <mkdir dir="nbproject/private"/>
    <!--- set variables needed by Ant when outside of Netbeans -->
    <propertyfile file="nbproject/private/private.properties">
        <!--<entry key="user.properties.file" value="/opt/NetBeans8/build.properties"/>-->
        <entry key="user.properties.file" value="C:\Users\jm\AppData\Roaming\NetBeans\8.2\build.properties"/>
    </propertyfile>
    <!-- Build targets - these just chain a call to the original build file-->
    <target name="build">
           <!-- <ant dir="${basedir}" target="build"/>-->
            <ant dir="${basedir}" target="default"/>
    </target>
    <target name="clean">
            <ant dir="${basedir}" target="clean"/>
    </target>
</project>

并运行Ant:

ant -file jenkins-build.xml clean
ant -file jenkins-build.xml build

感谢原始作者马特