我正在研究多个配置文件项目及其maven pom文件层次结构父pom文件包含tomcat7插件。
Parent pom.xml
|--child1 pom.xml
|--child2 pom.xml
|--child3 pom.xml
|--child4 pom.xml
|--child5 pom.xml
配置文件
Parent pom.xml
profiles
profile1 modules
|--child1
|--child2
profile2 modules
|--child1
|--child3
|--child4
我愿意关注外部server.xml
文件
<?xml version='1.0' encoding='utf-8'?>
<Server port="8080" shutdown="SHUTDOWN">
<Service name="Catalina">
<Connector port="8080" protocol="HTTP/1.1" />
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Listener className="it.xxx.tomcat.listener.TBXServerLifecycleListener"/>
</Host>
</Engine>
</Service>
</Server>
我在tomcat插件本身配置了server.xml文件位置
<serverXml>${user.dir}\conf\server.xml</serverXml>
如果没有这个外部配置文件,tomcat就会正常启动但是在添加这个tomcat插件之后,并不会在所选的配置文件中识别war文件,
根据以下答案,我必须在此文件中配置webapp路径。
https://stackoverflow.com/a/26004617/1709600
但在我的主题中,我有大约50个配置文件,每个配置文件webapps是不同的。我无法在此单个server.xml文件中配置每个webapp。
然后我的问题是,
tomcat插件本身有没有办法和webapps路径???
不将以下xml标记添加到server.xml文件server.xml
<Context docBase="../../webapp" path="/webapp" reloadable="true" />
我已经使用了以下配置,但这对我来说都不起作用...... :(
<defaultContextFile>${user.dir}\conf\context.xml</defaultContextFile>
<warSourceDirectory>${project.build.directory}/${project.build.finalName}/</warSourceDirectory>
<warDirectory>${project.build.directory}/${project.build.finalName}/</warDirectory>
<warFile>${project.build.directory}/${project.artifactId}.war</warFile>
我的Maven命令:
tomcat7:run-war-only -P profileX