2016-09-12 23 views
0

我部署我的戰爭作爲一個OSGi包,但不斷收到此錯誤:Glassfish文件在/ AppData/Local/Temp/osgiapp ...中打開錯誤?

[#|2016-09-12T13:39:59.409+0200|WARNING|glassfish3.1.2|javax.enterprise.system.tools.deployment.org.glassfish.deployment.common|_ThreadID=39;_ThreadName=Thread-2;|DPL8004: file open failure; file = file:/C:/Users/me/AppData/Local/Temp/osgiapp2866222350344881589/WEB-INF/lib/Bundle295.jar|#] 

我不知道爲什麼的GlassFish一直在尋找Bundle295.jar文件。這不是在我的戰爭WEB-INF/lib

此外,我注意到,如果我刪除類路徑爲el-apiel-impl,問題消失,但當然我會有一些其他類def未找到錯誤,由於缺少庫。

換句話說,這個問題似乎只有當我在MANIFEST.MF文件這樣的類路徑中添加兩個罐子WEB-INF/lib/el-api-2.2.jarWEB-INF/lib/el-impl-2.2.jar發生:

Bundle-ClassPath: WEB-INF/classes, 
WEB-INF/lib/el-api-2.2.jar, 
WEB-INF/lib/el-impl-2.2.jar, 
WEB-INF/lib/javax.servlet-api-3.1.0.jar, 
WEB-INF/lib/javax.servlet.jsp-api-2.2.1.jar, 

任何人都可以闡明這一些輕?

回答

0

GlassFish在應用程序生命週期中的各個點上在-Djava.io.tmpdir中指定的位置創建臨時文件。這看起來像是由Felix(OSGi容器)創建的用於緩存目的的臨時目錄。當服務器正常關閉時,這些臨時文件將被清除,但是如果服務器被終止或發生終止JVM的錯誤,則可以暫停這些臨時文件。

您應該能夠刪除..\osgiapp...文件夾而沒有任何副作用並重新啓動GlassFish以避免該問題。

服務器日誌消息似乎只是一個WARNING - 它實際上是否導致任何問題?否則,可以忽略。

+0

嘿@Mike。雖然這是一個警告,但當錯誤顯示時,頁面不會加載。 此外,我的庫罐中沒有找到類。 – 0x56794E