从Eclipse启动Tomcat时出现“SetPropertiesRule”警告消息

时间:2008-09-19 19:36:01

标签: java eclipse tomcat eclipse-3.4

当我从Eclipse(3.4)启动Tomcat(6.0.18)时,我收到此消息(首先在日志中):

  

警告:   [SetPropertiesRule] {服务器/服务/发动机/主机/上下文}   将属性'source'设置为   'org.eclipse.jst.jee.server :(项目名称)'   找不到匹配的财产。

似乎此消息没有任何严重影响,但是,是否有人知道如何摆脱它?

12 个答案:

答案 0 :(得分:152)

这个问题的解决方案非常简单。双击tomcat服务器。它将打开服务器配置。在服务器选项下,选中“将模块内容发布到单独的XML文件”复选框。重启服务器。这次你的页面没有任何问题。

答案 1 :(得分:32)

来自Eclipse Newsgroup

  

有关源属性的警告   是Tomcat 6.0.16的新功能,可能是   忽略。 WTP添加了“源”属性   识别中的哪个项目   工作空间与   上下文。 Context的事实   Tomcat中的对象没有对应的   source属性不会导致任何问题   问题。

我意识到这并没有回答如何摆脱警告,但我希望它有所帮助。

答案 2 :(得分:5)

服务器标签

- >双击服务器名称

- >服务器选项:勾选“发布模块上下文以分隔XML文件”

重启服务器

答案 3 :(得分:5)

我正在使用Eclipse。我通过以下方式解决了这个问题:

  1. 打开服务器标签。
  2. 双击您正在使用的服务器。
  3. 在服务器配置页面上,转到服务器选项页面。
  4. 检查服务模块而不发布。
  5. 然后保存页面和配置。
  6. 通过重建所有应用程序重新启动服务器。
  7. 你不会得到任何这种错误。

答案 4 :(得分:3)

从Eclipse中删除服务器实例并创建一个新实例。

答案 5 :(得分:0)

我在Eclipse 3.4(Ganymede)和动态Web项目中遇到了同样的问题。
该消息没有影响成功部署。但我必须删除行

<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>

来自Eclipse的.settings文件夹中的org.eclipse.wst.common.component文件

答案 6 :(得分:0)

我在问题出现之前复制了动态Webproject。因此,更改.settings目录中的org.eclipse.wst.common.component文件解决了我的问题。其他解决方案无效。

答案 7 :(得分:0)

单独的XML解决方案对我和其他人来说从未起作用......

我通常会遵循这个过程并提供帮助:

  1. 停止服务器(确保它通过任务管理器停止,我杀了javaw.exe很多次Eclipse没有真正关闭)
  2. 右键单击Server-&gt;'添加和删除'。删除项目。完成。
  3. 右键单击Server-&gt;'添加和删除'。添加项目。完成。
  4. 重新启动查看是否有效,如果不能继续
  5. 双击服务器...查看它的发布位置(服务器路径:我认为这是针对我的tmp#目录,因为我使用已经安装的Tomcat实例,我重复使用,不确定是否会有所不同如果使用Eclipse的内部/捆绑的tomcat服务器)
  6. 右键单击“服务器”并“清理”...上次最后一次为我工作(所以可能想先尝试一下),添加/删除项目对我有用。如果不起作用,继续......
  7. 从服务器路径中删除所有文件,看看是否所有文件都在那里构建和发布(/ WEB-INF / classes和/ webroot中的其他常规文件)。
  8. 重启Eclipse和/或机器(不确定我是否需要达到这一点)

答案 8 :(得分:0)

我发布了我的答案,因为我怀疑可能有人在那里,上述解决方案可能无效。

所以,你得到一个警告,

  

警告:[SetPropertiesRule] {Server / Service / Engine / Host / Context}设置属性&#39; source&#39; to&#39; org.eclipse.jst.jee.server :(项目名称)&#39;找不到匹配的财产。

不是通过在服务器配置中检查该选项来禁用此警告(我确实尝试过),我建议你这样做:

  1. 首先通过右键单击Project explorer关闭所有现有项目。
  2. 删除已与服务器同步的所有项目。
  3. 删除服务器并重新部署。
  4. 创建一个新的动态项目,什么也不做,只是尝试在服务器上运行它。
  5. 检查控制台,您现在收到警告吗? (我的情况我没有得到任何) 这意味着您的项目没有使用eclipse或服务器出错。
  6. 现在重启服务器。不要运行任何应用程序。
    您可能知道Tomcat容器在开始时加载所有同步应用程序的上下文。
  7. 它将加载任何已经同步的应用程序的上下文。
  8. 这是一个问题,如果您的项目确实存在问题,它将显示异常的堆栈跟踪。仔细查看,您会发现应用中的错误位置。
  9. 现在,如果您成功发现应用中存在错误,则可能的位置是查找容器用于加载应用的web.xml文件。在我的情况下,我在servlet映射中拼错了一个名字,这使我无意义地调试了3个小时。您的问题可能在其他地方。

    另外,如果你有许多应用程序与服务器同步,那么其他应用程序的上下文可能会成为问题的根源。尝试逐个调试。

答案 9 :(得分:0)

我尊重这里给出的所有解决方案。

但是在阅读完所有内容之后我才知道,我们还没有观察到struts.xml文件或web应用程序所需的任何配置文件在哪个文件夹中。

我的解决方案是:

  1. 将struts.xml文件复制到项目的src文件夹中。
  2. 点击&#34;文件 - &gt;全部保存&#34;在eclipse中点击&#34;项目 - &gt;清理&#34;。
  3. 重启服务器。
  4. 希望问题得到解决。

答案 10 :(得分:0)

确保web.xml文件中有正确的jsp文件名。通过使用我当前的文件名替换web.xml中的默认.jsp文件名解决了问题

答案 11 :(得分:-2)

我发现Tomcat似乎无法找到其他项目中定义的类,甚至可能在主项目中找到。它在过滤器定义上失败,这是web.xml中的第一个定义。如果我将项目及其依赖项添加到服务器的启动配置中,那么我只是转到一个新错误,所有这些似乎都指向它没有正确设置项目。

我们的设置非常复杂。我们在Eclipse中有多个组件作为项目,具有单独的输出项目。我们有一个单独的webapp目录,其中包含静态HTML和图像,以及我们的WEB-INF。

Eclipse是“Europa Winter release”。 Tomcat是6.0.18。我尝试了2.4版和2.5版的“动态网络模块”方面。

感谢您的帮助!

  • 理查德