Netbeans Java项目的自定义BuildFile失败

时间:2012-05-01 22:17:47

标签: java ant

我有一个Netbeans项目,它有一个源文件夹(在Netbeans项目文件夹之外)。现在,当我从IDE编译源代码时,一切正常。但是,当我使用自己的构建脚本时,它会在运行时发出错误。

应用程序依赖于我使用path元素指定的几个外部库以及refid标记中相应的classpath属性(请参阅下面的代码)

这是我的构建文件

<project name="XX" default="dist" basedir=".">

    <property name="dir.src" location="E:/XX git/xx/src"/>
    <property name="nbproj" location="E:/Netbeans Project"/>

    <property name="dir.dist" value="dist"/>

    <path id="libs">
        <fileset dir="${nbproj}/dist/lib">
            <include name="*.jar"/>
        </fileset>
    </path>


    <target name="clean">
        <delete dir="dist"/>
        <delete dir="release"/>
        <delete dir="build"/>
    </target>


    <target name="compile">
        <mkdir dir="build/classes"/>
        <javac srcdir="${dir.src}" destdir="build/classes" includeantruntime="false">
            <classpath refid="libs"/>
        </javac>
    </target>

</project>

当我使用ant compile编译它时,它会编译所有源文件而不会出现任何错误。但是,当我使用命令

执行它时
java -cp "E:\Netbeans Project\dist\lib\*;." controller.CZSaw

它很好地创建了应用程序GUI,然后当我执行某些操作时,它失败并出现以下错误:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at javax.swing.ImageIcon.<init>(ImageIcon.java:167)
        at controller.viewsynchronizer.CZViewManager.getIcon(Unknown Source)
        at view.script.CZScriptView.<init>(Unknown Source)
        at controller.script.CZScriptProcessor.<init>(Unknown Source)
        at controller.script.CZScriptProcessor.getInstance(Unknown Source)
        ...

我知道要查看源代码时会发现一些错误。但是,由于相同的代码在IDE中很好地编译和工作,我认为我编译的方式有问题。构建文件中是否有任何明显的错误。

如果我在这里错过了一些有用的信息,请告诉我。

1 个答案:

答案 0 :(得分:1)

经典错误:假设因为“一切正常”在一个环境中意味着你已经做好了一切,并且对于随后出错的事情都无可指责。

这意味着您的IDE会处理一些您不知道的事情。

看看你的第一堂课:

controller.viewsynchronizer.CZViewManager.getIcon(Unknown Source)

看起来你的控制器正在寻找一个不在CLASSPATH中的图标图像。