当前位置:  开发笔记 > 编程语言 > 正文

从Maven开始时Tomcat(不是8080)的备用端口?

如何解决《从Maven开始时Tomcat(不是8080)的备用端口?》经验,为你挑选了4个好方法。

是否有一种简单的方法可以在pom或命令行中为Tomcat指定备用端口.我想在同一台机器上运行几个项目.



1> Vincent Deme..:

我知道这个帖子已经老了但是......

Greg提供的文档链接很有趣:

port:
The port to run the Tomcat server on.
    Type: int
    Required: No
    Expression: ${maven.tomcat.port}
    Default: 8080

表达式是maven用来获取代码中的值的表达式.它可以来自配置文件,也可以来自命令行.

你可以跑

mvn -Dmaven.tomcat.port=8181 tomcat:run-war


绝对!`mvn -Dmaven.tomcat.port = 8181 tomcat:run`

2> Greg..:

使用tomcat-maven-plugin上给出的语法,您可以直接指定端口:


  org.codehaus.mojo
  tomcat-maven-plugin            
            
    tomcat-development-server
    9966
  



3> redsolo..:

当我有几个小servlet同时运行它们的集成测试阶段时,我遇到了类似的问题,因为那些配置为使用相同的端口而成为一个问题.但是由于build-helper-maven-plugin:reserve-network-port目标,可以获得可用的随机端口号.然后我可以创建一个包含http:// localhost:[port]/[servletname]的URL,该URL 被提供给 Java测试类.

检索随机端口:


org.codehaus.mojo
build-helper-maven-plugin
1.7

    
        reserve-network-port
        
            reserve-network-port
        
        pre-integration-test
        
            
                tomcat.http.port
            
        
    

用端口启动tomcat


org.apache.tomcat.maven
tomcat6-maven-plugin

    ${tomcat.http.port}
    true

....

将URL提供给由failsafe插件运行的Java集成测试


org.apache.maven.plugins
maven-failsafe-plugin
2.12.3
....

    
        http://localhost:${tomcat.http.port}/${project.build.finalName}/
    


Java代码

public class DownloadAreaIT {
    private static final String URL = System.getProperty("integration-test.url");
}



4> Sai Viswanat..:

以下为我工作:

        
            9090
        

        
            org.apache.tomcat.maven
            tomcat7-maven-plugin
            2.2
            
                ${maven.tomcat.port}
            
        

推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有