2013-03-17 110 views
2

我能够在第一次将其放置在domains/domain1/autodeploy dir下时部署我的WAR。但是,在进行一些更改并将WAR重新部署到autodeploy目录后,更改没有被拾取。我甚至删除了domains/domain1/applications/myapp(其中myapp对应于部署中的myapp.jar),但是WAR没有重新部署。启动服务器,并通过asadmin停止:WAR不会从自动部署中重新部署在Glassfish中

asadmin start-domain 
asadmin stop-domain 

什么我做错了,这样的应用程序没有得到重新部署?

更新:我手动尝试(重新)部署(也使用--force选项)的战争,但在server.log得到了以下错误:

[#|2013-03-17T20:47:36.177-0400|SEVERE|glassfish3.1.2|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=72;_ThreadName=Thread-2;|Application with name myprojectname is already registered. Either specify that redeployment must be forced, or redeploy the application. Or if this is a new deployment, pick a different name|#] 

我不知道该怎么注销/取消部署一个应用程序,是曾经部署过。我尝试删除所有在domain.xml中对我的应用程序的引用,但它不起作用。这似乎是软件中的一个非常基本的错误。

+0

Glassfish日志文件中可能有帮助吗? – blamonet 2013-03-17 23:54:56

+0

发布了更新 – amphibient 2013-03-18 01:02:09

回答

3

您可以通过asadamin与取消部署:

asadmin undeploy yourapplication 

您还可以访问通过图形界面GlassFish管理控制台http://localhost:4848和取消(查看应用程序)。

一般再自动部署应该工作,但我会建议使用正常的部署方法或通过类似的NetBeans IDE的一些增量重新部署...

+0

我尝试了你说的话,但它告诉我没有这样的应用程序存在。但是当我试图重新部署它时,它告诉我它存在。 #困惑 – amphibient 2013-03-18 14:43:10

8

我知道这是很久以前回答,但在任何情况下,否则通过谷歌像我这样做,我有另一个可能的答案...

遇到同样的问题后,我发现以下... autodeploy/.autodeploystatus目录仍然有一个文件引用应用程序我试图通过将战争复制到自动部署目录来重新部署。我必须删除autodeploy/.autodeploystatus目录中的文件,然后在将战争复制到autodeploy目录中时部署了我的应用程序。

希望有所帮助。

注意:显然,it is obvious其他人谁使用玻璃鱼,你必须从隐藏的.autodeploystatus目录中删除所有这些东西,让您的重新部署工作。他们为何显而易见?我们可能永远不知道。