使多级jar更容易

时间:2012-09-30 14:53:48

标签: java jar compilation

我正在开发一个项目,其中包含大量需要编译到jar的类。我知道入口点和manifest.txt以及我jar中所有需要的项目,我的类都被编译并拥有.class文件和所有内容,但问题是我必须将所有类文件添加到最终在命令提示符中通过单行编译jar。我想知道并且在互联网上几乎没有任何东西,如果它可以以一种更简单的方式完成,因为我将不断更新我的工作并且必须重新编译并重新实现我的工作。我听说第三方程序可以解决这个问题,但某些网站上的某些人说他们可能会导致问题和内容,所以我很快就放弃了这个想法。既然我现在处于一个非常紧张的地方,我希望听到有关这方面的意见和建议。总结一下:

  • 我想要一种方法在一个jar中编译一大堆.class文件,而不必在编译之间反复输入所有这些文件,这样可以节省时间和挫折。

  • 如果有可能的话,我更喜欢原生的东西 - 例如JDK的jar编译器而不是任何第三方。如果有一种方法可以使用清单或编译时参数中的任何其他文件来执行此操作,请让我听一听。

  • 任何关心建议,讨论或给我一个充分理由的人都非常欢迎使用第三方申请。
  • 请记住,我在Windows上工作,但我的应用程序将是跨平台的,所以不建议作为主要选项一些编译解决方案,将使最终文件具有.exe扩展名(尽管如果有人知道如何这样做,我想在评论中听到它,因为我也想到这一点。)

提前致谢,如果您觉得有必要问我任何事情来帮助您回复,请拍摄!

3 个答案:

答案 0 :(得分:3)

看看这个ant教程,它展示了如何编写一个可以编译和jar的简单build.xml。

http://ant.apache.org/manual/tutorial-HelloWorldWithAnt.html

然后,您可以根据自己的需要进行调整。

注意:ant仅适用于像您这样的小型项目。

答案 1 :(得分:2)

解决此问题和相关问题的方法是停止在命令行键入并使用构建工具。这里用于Java构建的常用工具是:

还有其他不常见的。这两个工具都将为您提供所需的工具。

答案 2 :(得分:0)

只想添加一些关于Ant和Maven的信息。

在您的情况下,您需要自动构建应用程序。基本的解决方案是某种脚本,但它根本就没用过。存在更好的解决方案:

如果您想要使用脚本来自动构建,可以使用像Ant这样的工具,它有点像make和C世界中的工具,您可以在配置文件中为构建定义所需的任务。这种解决方案的问题在于,它允许您为构建定义自己的结构,并且项目的新来者可能在构建构建逻辑时遇到一些困难。

另一种方法是描述您想要做什么样的构建,在大多数情况下组织您的源和资源(事实上遵循惯例)。例如,java源代码位于src / main / java中,测试位于src / test / java中,配置文件位于src / main / resources中,依此类推。在您的构建描述中,您将只说:这是一个java项目,我想构建一个War Web应用程序并使用jUnit 4执行我的测试。我的项目的依赖项是apache xerces和hibernate 4.然后,该工具将知道怎么做而不需要说怎么做。这就是maven的做法。

简而言之,在Ant approch中,您将说明如何做您想做的事情,在Maven方法中,您将定义您想要做的事情,并且该工具将默认知道如何。

您可能也对Gradle等工具提供的某种混合方法感兴趣。

了解更多信息:

希望有所帮助