maven ear / war问题和“部署保存”无法正常工作

时间:2012-09-03 12:48:57

标签: java-ee maven netbeans

我有一个耳朵项目,它包装了一个ejb模块和2个war。它们中的每一个都被声明为maven依赖。我使用maven-ejb-plugin,maven-ear-plugin和maven-war-plugin。所有项目都共享一个共同的超级pom,它将每个项目都声明为一个模块。

当我运行我的耳朵项目时,更改战争中的网络资源并不会在服务器上重新部署它,尽管我在任何地方(战争/耳朵)检查了“部署保存”。

一些可能有用的信息:

  • 我没有从netbeans生成pom.xml。这些项目之前是蚂蚁项目,我通过模仿netbeans似乎通过ear / ejb / war设置生成了这些项目。
  • 我有时很难在war文件中进行更改。我需要清理所有项目,停止服务器等。我猜某些地方出了问题。我想只是更改我的文件并运行maven install(或点击'run'或'debug')应该有用吗?
  • 我正在运行耳朵项目(不确定我是否应该以某种方式运行superpom)。
  • Netbeans在启动浏览器时没有运行正确的URL(/XXX-1.0-snapshot而不是我指定的/ XXX,哪个是实际工作的)。我总是要在地址栏中手动编辑它。可能有关系吗?

编辑: 看到这个本地项目:看到这个本地项目:

  

下载:http://repository.primefaces.org/be/valuya/xyzproj/XYZproj-ejb/1.0-SNAPSHOT/maven-metadata.xml

EDIT2:打开了这个netbeans错误:http://netbeans.org/bugzilla/show_bug.cgi?id=218806

1 个答案:

答案 0 :(得分:1)

在保存时部署:此选项仅在您将netbeans.deploy属性设置为true时才适用(这意味着netbeans将处理您的webapp的部署并将监视您的文件并执行必要时重新部署)。在netbeans中,右键单击您的maven项目转到“属性”,在类别列表下选择“操作”,选择“运行操作”,然后在“设置属性”文本框中指定netbeans.deploy=true

在战争中进行更改:如果我没有错,您只在修改静态网页内容时遇到此问题(例如html,css,javascript等)。这是因为大多数服务器内存映射静态内容并锁定文件以达到性能目的。您需要配置服务器以禁用内存映射文件。配置取决于您正在使用的服务器(glassfish / jetty / tomcat)。

netbean启动错误的网址:netbeans根据项目的文件夹名称使用网址。我也无法改变它(它总是重置),所以我猜这是一个IDE错误。

相关问题