从命令行制作 ImageJ .jar

Making a ImageJ .jar from command line

我修改了 ImageJ 源代码,并使用 javac 命令从命令行编译,但我正在尝试创建 .jar 文件,我需要帮助。

这是我第一次尝试从命令行编译和创建 .jar。当我创建 .jar 时,我执行了下一个命令:

jar cf test.jar ImageJ/ij/*

目录 "ImageJ/ij/" 包含编译后的代码。

它没有失败,但是当我尝试执行 .jar 时 returns 出现错误 "Failed to load Main-Class manifest attribute from test.jar"。当我执行 .jar 时,我总是执行 "java -jar file.jar" 但是,在这种情况下,它不起作用。

如果我执行“java -cp test.jar ij.ImageJ”(ij.ImageJ是主要的Class) 它可以工作,但我需要在批处理模式下执行一个宏并且...它失败了。

java -cp test.jar ij.ImageJ -batch ../MacrosIJ/helloWorld.ijm
  Exception in thread "main" java.awt.HeadlessException: 
  No X11 DISPLAY variable was set, but this program performed an operation  which requires it.
  ...

如果我在 Eclipse 中创建 .jar 它可以完美运行,有人可以解释我做错了什么吗?。 如果有人可以提供帮助,我将不胜感激。谢谢!!

推荐的方式build ImageJ from source is using Maven

git clone https://github.com/imagej/ImageJA.git
mvn
cd target
java -cp ij-1.50.jar ij.ImageJ