1

我正在使用 jetty 插件运行一个 maven 项目来运行 Web 项目。当我遇到 spring-loaded 时,我立即想尝试一下,以便在不使用 JRebel 或 DCVM 的情况下获得一些不错的代码热交换。

这是如何在eclipse中使用的?我已经配置了以下内容:

mvn jetty:run 的 Eclipse 运行配置:

工作目录:${project_loc}

论据:jetty:stop jetty:run -Dspring.profiles.active="LOCAL" -Djavaagent:C:\XXX\XXX\ide\springloaded-1.2.0.RELEASE.jar -Dnoverify

我的项目 pom 中的码头插件:

                <groupId>org.mortbay.jetty</groupId>  
                <artifactId>jetty-maven-plugin</artifactId>  
                <!--<version>7.4.5.v20110725</version>-->  
                <version>8.1.8.v20121106</version>  
                <configuration>  
                    <classesDirectory>${basedir}/target/classes/</classesDirectory>  
                    <webApp>  
                        <contextPath>/${project.parent.artifactId}</contextPath>  
                    </webApp>  
                    <contextXml>${basedir}/src/test/resources/jetty-context.xml</contextXml>  
                    <reload>manual</reload>                     
                    <scanIntervalSeconds>0</scanIntervalSeconds>                     
                    <connectors>  
                        <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">  
                            <port>8080</port>  
                            <maxIdleTime>60000</maxIdleTime>  
                        </connector>  
                        <connector implementation="org.eclipse.jetty.server.ssl.SslSocketConnector">  
                            <port>8443</port>  
                            <maxIdleTime>60000</maxIdleTime>  
                            <keystore>${project.build.directory}/mykeystore</keystore>  
                            <password>xxx</password>  
                            <keyPassword>xxxx</keyPassword>  
                        </connector>  
                    </connectors>  
                    <stopPort>9966</stopPort>  
                    <stopKey>foo</stopKey>  
                    <systemProperties>  
                        <systemProperty>  
                            <name>spring.profiles.active</name>  
                            <value>LOCAL</value>  
                        </systemProperty>  
                        <systemProperty>  
                            <name>jbossDataHome</name>  
                            <value>${project.build.directory}/jbossDataHome</value>  
                        </systemProperty>  
                        <systemProperty>  
                            <name>log4j.config</name>  
                            <value>${project.basedir}/src/test/resources</value>  
                        </systemProperty>  
                    </systemProperties>   
                </configuration>

但是当在 Eclipse 中运行这个配置时,它不会选择我更改的代码。关于我可以尝试什么的任何想法?搜索并没有产生太多答案..

4

1 回答 1

1

对于 maven 项目,您可以导出 MAVEN_OPTS 然后正常使用 maven 命令

export MAVEN_OPTS="-javaagent:your/path/to/springloaded-1.2.0.RELEASE.jar -noverify"

之后,当你运行mvn jetty:run它会工作。

为了在 eclipse 中使用,您可以为 jvm 设置一个参数。

于 2014-10-06T03:26:23.793 回答