Netbeans Java项目的ant自定义构建文件失败
我有一个Netbeans项目,它有一个源文件夹(在Netbeans项目文件夹之外)。现在,当我从IDE编译源代码时,一切正常。但是,当我使用自己的构建脚本时,它会在运行时出错
应用程序依赖于我使用path
元素和classpath
标记中相应的refid
属性指定的几个外部库(请参见下面的代码)
这是我的构建文件
<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 楼答案
经典错误:假设因为在一个环境中“一切都很好”,意味着你做的每件事都是对的,并且对随后发生的任何错误都是无可指责的
这意味着您的IDE处理了一些您不知道的事情
看看你的第一节课:
看起来控制器正在查找不在类路径中的图标图像