0

我已经手动安装了带有 1.6 JDK 的 Windows 8.1。

我正在使用 Eclipse(Kepler,面向 Web 开发人员的 Java EE IDE)。我导入了一个WAR使用Ant构建脚本构建文件的项目;显示为一个项目。我创建了一个 Tomcat6 Server(下载可用的 Eclipse 包);这显示为第二个项目。

Modules选项卡上Server,我单击“添加外部 Web 模块...”,浏览到保存我的WAR文件的文件夹,然后单击确定。然后我添加了我的WAR文件名(目录名“...\SpiffyApp”到文件名“...\SpiffyApp\spiffyapp.war”)。我确认路径的名称是“/”;我单击以选中“启用自动重新加载”,然后单击“确定”。

我承认 - 我偷看了内部Server配置。我点击了“打开启动配置”;在“编辑启动配置属性”对话框的“参数”选项卡上,我发现了以下属性设置:

-Dcatalina.base=“....metadata.plugins\org.eclipse.wst.server.core\tmp0”

然后在我的恶作剧中,我观察到“tmp0”目录有一个“webapps”子目录。啊哈!

我注意到,在某些情况下,“SpiffyApp”会在“webapps”下重新发布——问题是,我不知道什么时候

具体来说,当我告诉服务器“清理”/“发布”时,Eclipse 没有将我的应用重新发布到“webapps”,这让我很失望。我真正想要的是在我重建WAR.

WAR当我执行所有这些操作时,我可以重新部署:

  1. 停止了我的 TomcatServer
  2. 删除“tmp0/webapps”下的所有文件夹
  3. 删除“tmp0/work”下的所有文件夹(我从Chris Lercher那里得到的提示,here
  4. 重建我的WAR文件
  5. 开始了我的Server

我肯定做错了什么。

这里有什么规则?我真的要删除 Web 模块,删除“tmp0”中的文件夹并重新添加 Web 模块吗?

4

1 回答 1

0

您做错的事情是期望它监视存档文件的更改,而存档文件通常不会更改。将 WAR 作为项目导入,然后 Eclipse 可以在应用程序中发生实际更改时正确部署它。

否则,您可能会尝试从服务器视图中的 Tomcat 服务器实例的上下文菜单中强制清理服务器区域。

于 2013-11-12T04:42:54.237 回答