gpt4 book ai didi

Eclipse 在 wtpwebapps 中生成我的类三次

转载 作者:行者123 更新时间:2023-11-28 23:51:47 25 4
gpt4 key购买 nike

我遇到了 PrettyFaces 框架的问题,当使用 eclipse 在服务器 (tomcat 6) 上运行应用程序时,不止一次找到一个类

我发现 eclipse 在 wtpwebapps 中不止一次生成类:

\WEB-INF\classes\com\myapp\sample\beans\myclass.class
WEB-INF\classes\target\classes\com\myapp\sample\beans\myclass.class
\WEB-INF\classes\target\app-name\WEB-INF\classes\com\myapp\sample\beans\myclass.class

更新:

我正在使用 m2eclipse 插件,并使用 ma​​ven 作为我的构建工具,可能它们的配置有问题,或者需要配置一些东西。

更新 2:

这是构建的 pom 文件,也许我有问题:

<build>

<finalName>appName</finalName>

<resources>

<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>

</resources>

<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>install</id>
<phase>install</phase>
<goals>
<goal>sources</goal>
</goals>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>

有什么办法可以解决这个问题吗?

最佳答案

我安装了“m2e wtp”连接器了吗? Maven -> Discovery -> Open Catalog(在 Indigo 中)搜索“wtp”。

考虑使用:

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

那么可能不需要像您那样设置UTF-8。但是也许此时您有另一种编码,但是 *.java 一种编码和另一种编码资源会很奇怪。最好使整个项目相同。

您能否确认您是否正在构建 WAR,这就是您在 WAR 中看到的内容?或者如果正在使用 Eclipse 中的启动 Tomcat 功能,这就是您在项目中看到的内容。

同时确认你已经使用了Stop Tomcat, Clean,手动检查目录是否已经清理干净(可能做一个workspace refresh,另外Servers -> Clean,手动删除Tomcat区的文件)。然后执行完整发布(到 tomcat),然后启动/调试 tomcat 以启动。

我猜想如果您现在的配置如上(并假设没有父 pom.xml 严重影响构建),那么您看到的文件是在乱用 maven 后没有清理 wtpwebapps 区域的结果配置。

有多个地方可以检查是否已清理:

Temporarly Turn off: Project -> Build Automatically
Stop All Servers instances running like: Tomcat
Run As -> Maven -> clean
Servers -> Clean

Open file browser and validate for yourself outside of Eclipse that the following dirs are empty or non-existant:

workspaceDirectory/projectDirectory/target (the maven output folder)

workspaceDirectory/metadata/.plugins/org.eclipse.wst.server.core/tmpX/wtpwebapps/**
# This one is ok to have the top level contextPath's, provind they are currently active projects you have added to the server.

$CATALINA_HOME/

Perform workspace refresh (to ensure Eclipse resync file system state to workspace state). I do this with clicking on any project in Project Explorer, then Ctrl-Clicking it again to deselect it (so nothing is selected but Project Explorer is in focus) then press F5. Other people use Ctrl-A to select all projects.

Now do a Project -> Build All
Now do a Servers -> Publish (now check the tree you get)

Now re-enable Project -> Build Automatically (if you run that way)

关于Eclipse 在 wtpwebapps 中生成我的类三次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7792466/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com