从命令行构建netbeans项目有点不同

时间:2013-05-17 06:08:07

标签: java netbeans ant

我想从命令行构建我的项目并对输出进行哈希。

我使用了这个似乎有用的脚本:

set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_09
set PATH=C:\Program Files\NetBeans 6.9.1\java\ant\bin;%PATH%
ant clean jar

它构建我的项目没有错误,但输出不是二进制相等。如何以与netbeans完全相同的方式调用ant?

编辑:我需要输出相等,因为我想比较md5哈希并比较我的版本控制。我正在使用kdiff3进行比较,我也提取了jar,不同的文件似乎与我程序中的webservice客户端有关。

1 个答案:

答案 0 :(得分:1)

也许是因为清单中存储了ant版本。 NetBeans安装自己的Ant,它可能与系统中安装的不同(在PATH上不可访问)。你应该只对类进行校验和。

NetBeans创建的jar就像This

MyProgram.jar
 |
 |-> META-INF
 |     |
 |     |-> MANIFEST.MF
 |
 |-> package1
 |    |
 |    |-> classes of package1 and other packages
 |
 |-> package2
 |  ...
 |
 |-> package3
    ...

您应该解压缩jar文件并根据程序包文件夹下的文件创建校验和,即package1package2package3等。{{1}保存用于创建应用程序的MANIFEST.MFant版本。