首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java构建系统选项

问Java构建系统选项
EN

Stack Overflow用户
提问于 2012-06-24 12:51:44
回答 3查看 1.1K关注 0票数 3

我目前正在以非常笨拙的方式构建桌面java应用程序。该应用程序部署在Windows、Mac和Linux上。下面是我的构建过程:

在Windows上:

  • 更新本地存储库
  • 启动Eclipse
  • 刷新项目
  • 双击.jardesc文件以生成可执行的jar文件
  • 将可执行jar提交到源代码管理
  • 打开.nsi脚本,单击build按钮(我已经安装了NSSI插件)来生成.exe安装程序
  • 将安装程序上载到ftp服务器以发布

对Mac:

  • 更新本地存储库
  • 运行shell脚本以在源代码管理中使用.dmg生成.jar文件
  • 上载到ftp服务器以发布

在Linux上:

  • 更新本地存储库
  • 运行shell脚本以在源代码管理中使用.deb生成.jar文件
  • 上载到ftp服务器以发布

我还想在将来的构建中包括一些额外的步骤,例如:

  • 设置构建日期
  • 设置头git提交id
  • 执行一些代码混淆

对于如何精简和加快这一进程,有什么建议吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-24 15:42:37

如果您真的想拥有一个好的构建系统,那么我建议您学习并使用Maven,它提供:

  • 基于声明性项目定义(pom.xml)的全面项目构建生命周期管理
  • 大量的插件,我希望它能够处理所有所需的特定构建步骤。
  • 与Eclipse非常好的集成
  • 完全依赖关系管理(包括依赖关系的自动解决和下载)

这不是给胆小的人(Maven是一个复杂的野兽)的,但从长远来看,这是一个很好的解决方案。

票数 3
EN

Stack Overflow用户

发布于 2012-06-24 15:37:16

第一步是在没有Eclipse的情况下构建所有的东西。

您可能还需要考虑使用类似于詹金斯的东西来自动化其中的一些内容。您仍然需要构建脚本。

一个解决方案可能看起来像

  1. 更新存储库。
  2. Jenkins检测更新并构建jar。
  3. 詹金斯把罐子保存到某个地方。

然后,您可以为每个操作系统创建单独的版本,也可以在Jenkins中运行。这些可以在成功完成第一个构建时自动触发。其中每一项将:

  1. 从上一次构建中提取jar。
  2. 将操作系统特定的二进制文件发布到FTP站点。

蚂蚁是一个很好的开端,但您可能也想看看阿帕奇常春藤或Maven,因为这将对管理构建输出和依赖关系有所帮助。

票数 2
EN

Stack Overflow用户

发布于 2012-06-24 12:55:20

您应该看看Ant:https://ant.apache.org/

Apache是一个Java库和命令行工具,其任务是将构建文件中描述的进程作为相互依赖的目标和扩展点来驱动。Ant的主要用途是构建Java应用程序。

另外,构建系统的长列表:软件

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11177576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档