Java 运行jetty而不使用maven 2插件打包项目
我试图在不构建整个项目的情况下运行jetty,但只是将jetty指向目标文件夹下的一个文件夹。这样做的原因是我希望在为glassfish构建应用程序时使用jetty作为静态内容服务器。例如,我不想在对css文件进行一点更改时一直重新部署 当我使用maven jetty插件并运行jetty:run时,它会自动构建项目,包括测试和包。我希望避免这种情况 有什么建议吗?关于,文档上说: 此目标用于将您的webapp组装成一场爆发的战争,并自动将其部署到JettyJava 运行jetty而不使用maven 2插件打包项目,java,web-applications,maven-2,jetty,maven-plugin,Java,Web Applications,Maven 2,Jetty,Maven Plugin,我试图在不构建整个项目的情况下运行jetty,但只是将jetty指向目标文件夹下的一个文件夹。这样做的原因是我希望在为glassfish构建应用程序时使用jetty作为静态内容服务器。例如,我不想在对css文件进行一点更改时一直重新部署 当我使用maven jetty插件并运行jetty:run时,它会自动构建项目,包括测试和包。我希望避免这种情况 有什么建议吗?关于,文档上说: 此目标用于将您的webapp组装成一场爆发的战争,并自动将其部署到Jetty 在执行自身之前调用生命周期阶段包的
- 在执行自身之前调用生命周期阶段
包的执行
包
阶段可能涉及过滤之类的事情(因此必须进行过滤)
也就是说,有几件事可能会有所帮助(我不确定我是否清楚地理解了您的目标,所以我将提到几个选项)。第一个选项,您可以使用手动
而不是自动
,以避免自动重新部署。关于手动
模式,写入:
“手动重新加载”从Jetty6.2.0pre0开始,将提供一项新功能来控制webapp的重新部署。
配置参数为:
[手动|自动]
当设置为手动时,没有自动
扫描和重新部署
webapp完成了。相反,用户可以
控件重新加载webapp的时间
轻敲回车键。设置
至自动扫描和
自动重新部署在以下位置执行:
时间间隔由
扫描间隔秒参数。重新加载范式的选择也可以
可以在命令行上通过
使用-Djetty.reload系统
参数例如:“mvn
-Djetty.reload=manual jetty:run“将强制手动重新加载,而不考虑
项目pom中配置了什么。
同样:“mvn
-Djetty.reload=automatic-Djetty.scanIntervalSeconds=10 jetty:run“将强制自动
使用扫描重新加载背景
每10秒一次,无论
项目pom中的配置
另一个选项是创建另一个“空”war模块(在maven意义上)以启动jetty,并使用可选参数设置:
将应用于任何插件配置参数之外的jetty.xml
文件的位置。如果要部署其他Web应用程序、处理程序等,或者有其他无法从插件配置的jetty对象,则可以使用它
这样,您应该能够部署来自其他webapp的静态内容。我不认为额外的内容会被“观看”,但如果需要,你可以随时将其与手动模式相结合。但从未测试过 我确信有一种方法可以直接在Glassfish上部署一个未打包的war文件…@Ramon:是的,我也这么认为,但不是通过我能看到的maven插件?此外,还有其他并发症。我们并不是为了快速开发周期而简单地删除静态内容。我们还希望稍后在CDN上部署静态内容,以便它们可以单独提供服务。