zoukankan      html  css  js  c++  java
  • Eclipse中使用Maven的Jetty插件Debug Web项目

    1.环境配置

    JAVA_HOME=D:Program FilesJavajdk1.8.0_161

    JRE_HOME=%JAVA_HOME%jre

    CLASSPATH=.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar

    MAVEN_HOME=D:Program Filesmaven-3.3.9

    M2_HOME=%MAVEN_HOME%

    MAVEN_OPTS=-Xms128m -Xmx512m -XX:PermSize=128m -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

    PATH=%JAVA_HOME%in;%JRE_HOME%in;%MAVEN_HOME%in;

    2. POM.xml

    <dependencies>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>2.5</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>javax.servlet.jsp</groupId>
                <artifactId>jsp-api</artifactId>
                <version>2.1</version>
                <scope>provided</scope>
            </dependency>
        </dependencies>
    
        <build>
            <finalName>test</finalName>
            <plugins>
                <plugin>
                    <groupId>org.mortbay.jetty</groupId>
                    <artifactId>maven-jetty-plugin</artifactId>
                    <version>6.1.10</version>
                    <configuration>
                        <scanIntervalSeconds>3</scanIntervalSeconds>
                        <webAppConfig>
                            <contextPath>/test</contextPath>
                        </webAppConfig>
                        <connectors>
                            <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
                                <port>8081</port>
                            </connector>
                        </connectors>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    3.使用PowerCMD启动Jetty

    > cd  webapp项目路径(pom.xml所在目录)

    >mvn jetty:run

    Listening for transport dt_socket at address: 8000

    [INFO] Scanning for projects...

    4.Debug Configuration

    进入Eclipse “Run/Debug/Debug Configuration”目录,选择“Remote Java Application”并点击“New”按钮,在“Project”中选择要调试的webapp项目。

    并确保端口号与MAVEN_OPTS中“address=”设置的值相同,Host保持默认(localhost)。为了关闭jetty,建议选中步骤二中的“Allow termination of remote VM”。

    关联源码:选择“Source”标签,选择“Add…”按钮添加关联的源代码。选择“Java Project”,勾选与当前webapp相关的Maven项目源码。

    然后点击Apply, Debug就可以进行调试了。

    5.另外一种启动方式

    如果不想使用cmd命令启动 jetty,可以进入eclipse ->Run/External Tools/External Tools Configuration目录,选择“Program”并点击“New”按钮。在“Main”标签中的“Location”中设置mvn的执行路径(如:D:Program Filesmaven3inmvn.bat),在“Working Directory”中选择webapp所属的workspace,在“Arguments”中添加“jetty:run”,如图:

    在“Environment”标签中,点击“New”按钮,添加变量:MAVEN_OPTS=-Xms128m -Xmx512m -XX:PermSize=128m -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
    如果设置suspend=y,则运行时需要等待debugger。

  • 相关阅读:
    You Don't Know JS: Async & Performance(第2章,Callbacks)
    You Don't Know JS: this & Object Prototypes (第6章 Behavior Delegation)附加的ES6 class未读
    C#抓取网页内容
    输出jq对象
    ASP.NET MVC 常用内置验证特性
    MVC不错的学习资料
    让Entity Framework启动不再效验__MigrationHistory表
    多线程
    递归
    序列化
  • 原文地址:https://www.cnblogs.com/mataszhang/p/5520284.html
Copyright © 2011-2022 走看看