【发布时间】:2011-02-09 23:31:10
【问题描述】:
我有一个由几个模块组成的 maven 项目。这将部署在客户端计算机上,将涉及安装 Tomcat,并将使用 NSIS 进行安装程序。有一个单独的应用程序可以监控 tomcat 并可以重新启动它、执行更新等。
所以,我的模块设置如下:
项目 +-- 客户端(所有代码,处理程序,用于战争) +-- client-common - (共享代码,在监视器和客户端之间共享) +-- client-web - (战争,基本上只是使用战争有applicationcontext,web.xml等) +-- 监视器 - (监视器应用程序 jar。使用包装器运行)所以,我需要创建一个安装程序。我正计划创建另一个模块,即安装程序。这是我拥有 tomcat 目录的地方,我希望 maven “组装”所有内容,然后运行 NSIS,以便创建最终安装程序。
但是,我需要将监视器 jar 文件放在一个目录中,然后将所有监视器依赖项放在 lib/ 目录中。最终的目录结构应该是:
项目安装程序目录/monitor/monitor-version.jar 项目安装程序目录/monitor/lib/monitor-dep-1.jar 项目安装程序目录/monitor/lib/monitor-dep-2.jar 项目安装程序目录/monitor/lib/monitor-dep-3.jar 项目安装程序目录/webapps/client-web.war在client-web\WEB-INF\lib 目录中,我们将在它被分解后拥有所有client-web 的依赖项。那行得通,我有 .war 文件。我遇到的问题是让监视器模块依赖项独立于客户端 Web 模块的依赖项。
我尝试只创建安装程序模块并创建监视器和客户端 Web 依赖项,但是当我使用依赖项复制时,它给了我一切。不是我想要的。
我倾向于创建一个名为 monitor-assembly 的新模块,或者给我一个包含我需要的目录格式的 zip 文件,但那是另一个模块。
有人可以帮我用正确的方法来完成这个吗?
谢谢!
【问题讨论】:
标签: maven-2 maven-assembly-plugin