无法删除/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/appname/WEB-INF/lib。可能被另一个进程锁定

时间:2014-01-14 11:43:01

标签: java eclipse tomcat

我正在尝试运行一个网络应用。一开始它进展顺利,但我不得不从项目文件夹中删除一些罐子。我没有使用eclipse删除罐子。所以,我开始得到这些错误:

Publishing failed with multiple errors
Could not delete C:/Users/maniceto/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/fj21-tarefas/WEB-INF/lib. May be locked by another process.
Could not delete C:/Users/maniceto/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/fj21-tarefas/WEB-INF. May be locked by another process.

我试图删除整个项目并再次编码。但它不起作用。我也删除了Tomcat服务器,但它又不起作用。然后我意识到要“修复”这个问题我必须删除这个文件夹:

C:/Users/maniceto/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/fj21-tarefas/WEB-INF 即可。

清理服务器和项目。但当我关闭eclipse并再次打开时,我得到同样的错误,那么我必须做这个过程。

这里的任何人都知道如何修复这种tomcat错误?

14 个答案:

答案 0 :(得分:8)

只需删除服务器,然后重新添加,然后重新启动eclipse。它对我有效。

答案 1 :(得分:7)

关闭日食并转到下面的位置(取决于您的系统位置)

tmp0

并删除// prepare return object returnResult.Value = new Dictionary<string, string>(); // discover data type Newtonsoft.Json.Linq.JTokenType parseAs = values[prop].Type; // parse the data and push it as string into the dictionary if (parseAs == Newtonsoft.Json.Linq.JTokenType.String) { returnResult.Value.Add(prop, (string)values[prop].Value); } else if (parseAs == Newtonsoft.Json.Linq.JTokenType.Integer) { returnResult.Value.Add(prop, ((Int16)values[prop].Value).ToString()); } else if (parseAs == Newtonsoft.Json.Linq.JTokenType.Boolean) { returnResult.Value.Add(prop, ((Boolean)values[prop].Value).ToString()); } else if (parseAs == Newtonsoft.Json.Linq.JTokenType.Array) { // in case of an array, when value is received by the corresponding method // the way of deserializing and parsing will be decided then returnResult.Value.Add(prop, values[prop].ToString()); } 目录现在启动eclipse,它将正常工作。

答案 2 :(得分:2)

我不知道这个问题的确切原因,但我通过重新启动系统清楚了同样的问题。所以重启你的系统一次,它可以为你的问题提供解决方案。

答案 3 :(得分:0)

可能是因为您正在使用C驱动程序,并且您可能需要管理权限才能对此目录执行操作,请在更改C驱动器后尝试,在D:或E之类的任何其他驱动器中执行:

答案 4 :(得分:0)

您的一些罐子仍然装入内存,因此无法删除其父目录。检查是否有正在运行的进程访问任何jar或重新启动Eclipse。

答案 5 :(得分:0)

Eclipse Juno在Win7上运行Tomcat 7;继续在javascript文件上获取发布错误。尝试重命名该文件但不起作用。

我按照Vikash Mudliar的建议删除了现有的Tomcat服务器,并添加了一个新的服务器实例。这很有效,我能够成功发布。

答案 6 :(得分:0)

在我的情况下,只有当我在Eclipse中触发Update Maven项目(ALT + F5)并且服务器实例在我的应用程序附加的情况下运行时才会发生这种情况。

所以你必须从服务器中删除应用程序,关闭服务器并执行更新Maven项目。如果问题仍然存在,清洁帮助

答案 7 :(得分:0)

如果您关闭项目并且它仍在Apache Tomcat资源中,则会出现此问题。

答案 8 :(得分:0)

已经有一篇帖子回答了你需要的这个问题:

  1. 清理服务器
  2. 清理Tomcat工作目录
  3. 链接到页面:Why is my publishing failing in Tomcat v7.0 Server because of locks by another process?

答案 9 :(得分:0)

在向pom添加新依赖项后面对此问题,

解决方案:

Add maven dependencies to 'deployment assembly'. To do that
right click on the project > Build Path > Configure Build Path > Deployment Assembly > Add > Java Build Path Entries > Maven Dependencies

答案 10 :(得分:0)

对于我的问题,我刚挂了一个进程。

在Windows上,打开任务管理器并关闭挂起的Java进程。在Linux上运行:ps -ef | grep tomcat,然后终止挂起的进程。

答案 11 :(得分:0)

我也遇到了这个问题。

我试图清洁服务器,删除服务器并重新安装,然后删除tmp0文件夹。我什至尝试复制和粘贴相同的项目并更改其他设置。没什么对我有用。

对我唯一有用的是创建一个新项目并将所有文件从损坏的项目复制到新项目。  我的解决方案还解决了this问题。

答案 12 :(得分:0)

删除Tomcat服务器并重新配置它,效果很好

答案 13 :(得分:0)

转到服务器选项卡->单击下拉菜单,其中包含与该服务器相关的所有项目 现在,只需右键单击您不想立即运行的项目名称,然后选择删除