最终,我们正在尝试找出我公司的构建/部署流程。作为开发人员,我需要向审核小组提供我的源代码。他们审查软件是否存在安全偏差。如果源代码通过了审核,则代码将发送到软件配置组。他们的工作是将我的应用程序归档并编译为 WAR。然后将 WAR 文件提供给 IT 部门,由 IT 部门将 WAR 放在服务器上。我认为如果我有一个独立的项目,这个过程会很容易。
但是在 Eclipse 中我有两个 Maven 项目,其中一个项目依赖于另一个项目。一个项目 core
提供核心功能。我将其分开是因为这些核心功能将由我的所有其他(内部)Web 应用程序项目使用。
Logging
filters
common models (phonebook, employee, etc)
common utilities (Emailing employess, String utils, etc..)
在其他项目中,例如 project1
,我在 POM 中添加了对 core
的依赖项。不确定是否需要执行此操作,但我还编辑了 Eclipse 项目属性并添加了对 core
项目的引用。通过一些花招(Maven 的新功能),我能够将 Project1
部署到我本地安装的 JBoss 中。我打开 WAR,在 WEB-INF/lib 文件夹中我可以看到 core-0.0.1-SNAPSHOT.jar
已自动包含在内。
但是我如何向 SCM 提供 project1
的源代码,它也需要 core
的源代码,而无需手动将 cores
源代码复制到 项目1s
源。
我可以将 core-0.0.1-SNAPSHOT.jar
复制到 Project1
中,但他们也应该在我每次部署时检查 cores
源代码一个新的应用程序,因为我可能添加或调整了一些核心功能。
最佳答案
您应该了解有关 maven SNAPSHOT 和发布存储库的更多信息。然后安装Nexus server作为生成的 jar、war、javadoc 和源(称为 Artifact )的目的地。
之后,您可能会对带有分阶段部署选项的商业 Nexus 版本感兴趣。 http://www.sonatype.com/people/2009/06/using-staging-repositories-for-deployment-in-nexus/
关于使用 SCM/Audit 组时的 Eclipse Maven 多项目构建/部署过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14713238/