2011-08-25 65 views
1

我想在Eclipse中构建可重用的Wicket组件。我有一个项目“组件”,其中包含MyComponent.java和MyComponent.html等文件。然后我有一个项目“应用程序”,其中包含我的应用程序代码,我希望使用MyComponent。Eclipse - Wicket - 从依赖项目找不到HTML文件

然而,检票找不到MyComponent.html。如果我将此文件从“组件”复制到“应用程序”,并使用完全相同的路径,那么Wicket认为它没有问题。

因此我了Summize将Eclipse不是抄袭从依赖项目“组成部分”的HTML文件,并将其提供给Web应用程序。我不能确定,因为我不知道从“组件”项目生成JAR的位置,我也不知道从“应用程序”项目生成WAR的位置。

我在“组件”看着项目设置,也找不到任何选项明确地发布HTML(非Java)文件的项目正在兴建的时候;但是我找不到明确禁止这个的任何选项。在“应用程序”项目中,我找不到包含来自其他项目的HTML文件的选项(只有包含JAR的选项 - 这可能应该足够吗?)

更新:我没有使用Maven,只是使用Eclipse的默认构建过程。

更新:我在Eclipse中使用Tomcat(但没有任何Eclipse插件为Tomcat;它似乎没有它好工作 - 只有显然这并不完全正确,因此我的问题...)

+0

理想情况下,根据您的建议,来自“components”的HTML应该包含在“components”jar文件中。如果您正在使用Maven构建您的项目(许多wicket项目使用),那么在构建时可能会意外删除(或未添加)包含HTML的部分。也许可以检查Maven Wicket Quickstart的正确设置吗? – jbrookover

+0

好的谢谢你的信息!我也很高兴知道我通常应该采用什么方法,即使它还没有正常工作:) –

回答

0

OK - 经典的Eclipse行动 - 其他原因(重启总是导致404无明显原因的项目:我检查了所有的配置文件,一切看上去都不错。),我从Eclipse中删除了“应用”项目并重新创建它。现在一切正常(HTML文件可...)

0

我假设你使用的是Tomcat - 在测试过程中,我通常使用Tomcat上下文来引用我的Eclipse项目工作区。 工作空间包含一个上下文/ WEB-INF目录结构,我的所有编译类,属性,HTML和其他资源都被复制到该目录结构中。 Tomcat的背景文件居住在目录(Tomcat)的/ conf目录/卡塔利娜/本地主机,包含以下格式的条目:

<Context path="/mywebapp" docBase="C:/eclipse/workspace/myapp/context" reloadable="true"> 
1

检查Eclipse的源文件夹包含/排除过滤器。项目 - >右键 - >属性 - > Java构建路径 - >选项卡源 - >选择源文件夹 - >按钮编辑。

+0

我在构建路径部分中扩展了源条目,它说'包含:(全部)'和'排除: (无)'。这可以吗? –

0

我有同样的问题!经过一段时间的研究,我有了一个解决方案!

你需要指定到Maven,它需要包括所有的文件,行家所理解的是,通过添加下一个命令的方式。

<build> 
    <resources> 
     <resource> 
      <filtering>false</filtering> 
      <directory>src/main/resources</directory> 
     </resource> 
     <resource> 
      <filtering>false</filtering> 
      <directory>src/main/java</directory> 
      <includes> 
       <include>**</include> 
      </includes> 
      <excludes> 
       <exclude>**/*.java</exclude> 
      </excludes> 
     </resource> 
    </resources> 
</build> 

它对我有效,我希望它适用于任何有同样问题的人! 我想对于发布这个查询的人来说太迟了,但对于有这个问题的你不适合!