如何设置一个好的java构建环境?

时间:2010-10-08 20:09:56

标签: java ant build proguard

的Java / Eclipse中。开发工作正常。我们有Windows或FreeBSD用于构建服务器。

要部署虽然我想做以下(以非常自动化的方式):

1:从源代码控制(perforce)拉下所有内容

2:使用可配置的javac和参数构建所有源代码(以及所有依赖项目)(我们希望看看不同的编译器是否会影响性能)

3:运行proguard

4:将所有资源(.class,“res /”目录,外部.jars等)打包到jar中。

5:创建.jnlp web start

6:创建本机Windows安装程序(任何建议?)

7)对于我们的Android应用程序4/5应该是构建/登录到可部署的android包而不是

我们尝试过蚂蚁,但看起来非常笨重,容易出错。也许最好的方法就是编写所有脚本?似乎应该有一个很好的方法来做到这一点。

5 个答案:

答案 0 :(得分:5)

我们将maven用于构建过程,Hudson用作为我们构建构建的Continuous Integeration Server。要制作Windows Installer,我们使用NSIS,它有一个Maven插件,甚至可以在linux机器上构建安装程序(你必须为构建器iirc重新编译一些库)。

对于Android,从未这样做过 - 所以不确定Maven是否有适当的帮助。但是如果需要,你可以随时将Ant嵌入其中(使用Maven的ant插件)。

简而言之,就像所有这些系统一样,有一些初始设置,但即使是轻度大型项目也是值得的,因为它很快得到了回报。

答案 1 :(得分:1)

考虑TeamCity。它不是免费的,但它是持续集成的好工具。

答案 2 :(得分:1)

我们暂时评估了FinalBuilder。它是一个非常强大的功能,可以集成各种构建版本的任务。

然后我们切换到Hudson,它运行了ant脚本和schell脚本。拥有hudson通常对运行其他任务非常有用 - 例如运行代码检查工具,创建VM实例,部署新创建的安装程序,启动测试等。

InstallAnywhere允许您为Java应用程序创建本机安装程序。但不是免费的。

答案 3 :(得分:0)

如果您熟悉Groovy,您可能会考虑Gant ...... Ant的所有功能与Groovy的编码灵活性相结合。

答案 4 :(得分:0)

我建议你重新考虑一下Ant。如果某些任务很笨拙,您可以使用exec任务启动shell或使用Java编写自己的ant任务。这仍然允许您使用Ant来协调整体构建。通过定义宏来减少剪切和粘贴爆炸,可以使Ant更容易出错。

Maven有很多不错的功能,但在项目开始时设置起来比较容易。将现有项目转换为使用Maven需要做很多工作。您可以通过将Ivy与Ant一起使用来获得Maven的依赖关系管理。