weblogic启动报错之WLS_DIAGNOSTICS000000.DAT

weblogic启动报错之WLS_DIAGNOSTICS000000.DAT

控制台报错log:

<2014-10-30 下午04时46分42秒 CST> <Critical> <WebLogicServer> <BEA-000362> <Server failed. Reason: 

There are 1 nested errors:

weblogic.diagnostics.lifecycle.DiagnosticComponentLifecycleException: weblogic.store.PersistentStoreException: java.io.IOException: [Store:280021]There was an error while opening the file store file "WLS_DIAGNOSTICS000000.DAT"
    at weblogic.diagnostics.lifecycle.ArchiveLifecycleImpl.initialize(ArchiveLifecycleImpl.java:66)
    at weblogic.diagnostics.lifecycle.DiagnosticFoundationService.start(DiagnosticFoundationService.java:107)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
Caused by: weblogic.store.PersistentStoreException: java.io.IOException: [Store:280021]There was an error while opening the file store file "WLS_DIAGNOSTICS000000.DAT"
    at weblogic.store.io.file.Heap.open(Heap.java:185)
    at weblogic.store.io.file.FileStoreIO.open(FileStoreIO.java:88)
    at weblogic.store.internal.PersistentStoreImpl.recoverStoreConnections(PersistentStoreImpl.java:332)
    at weblogic.store.internal.PersistentStoreImpl.open(PersistentStoreImpl.java:323)
    at weblogic.store.xa.PersistentStoreManagerXA.createFileStore(PersistentStoreManagerXA.java:104)
    at weblogic.store.xa.PersistentStoreManagerXA.createFileStore(PersistentStoreManagerXA.java:177)
    at weblogic.diagnostics.archive.DiagnosticStoreRepository.getStore(DiagnosticStoreRepository.java:85)
    at weblogic.diagnostics.lifecycle.ArchiveLifecycleImpl.initialize(ArchiveLifecycleImpl.java:64)
    ... 5 more
Caused by: java.io.IOException: [Store:280021]There was an error while opening the file store file "WLS_DIAGNOSTICS000000.DAT"
    at weblogic.store.io.file.StoreDir.throwIOException(StoreDir.java:214)
    at weblogic.store.io.file.StoreDir.open(StoreDir.java:104)
    at weblogic.store.io.file.Heap.open(Heap.java:183)
    ... 12 more
Caused by: java.io.IOException: Error from fcntl() for file locking, Resource temporarily unavailable, errno=11
    at weblogic.store.io.file.direct.DirectIONative.open(Native Method)
    at weblogic.store.io.file.direct.DirectFileChannel.<init>(DirectFileChannel.java:52)
    at weblogic.store.io.file.direct.DirectIOManager.open(DirectIOManager.java:139)
    at weblogic.store.io.file.StoreFile.openInternal(StoreFile.java:118)
    at weblogic.store.io.file.StoreFile.open(StoreFile.java:148)
    at weblogic.store.io.file.StoreDir.open(StoreDir.java:96)
    ... 13 more

> 
***************************************************************************
The WebLogic Server encountered a critical failure
Reason: Assertion violated
***************************************************************************
Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class weblogic.protocol.ServerIdentityManager$Initializer
    at weblogic.protocol.ServerIdentityManager.findServerIdentity(ServerIdentityManager.java:64)
    at weblogic.protocol.URLManager.findAdministrationURL(URLManager.java:172)
    at weblogic.server.ServerLifeCycleRuntime.getLifeCycleOperationsRemote(ServerLifeCycleRuntime.java:793)
    at weblogic.t3.srvr.ServerRuntime.sendStateToAdminServer(ServerRuntime.java:423)
    at weblogic.t3.srvr.ServerRuntime.updateRunState(ServerRuntime.java:409)
    at weblogic.t3.srvr.T3Srvr.setState(T3Srvr.java:187)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:458)
    at weblogic.Server.main(Server.java:67)

这个问题是之前启动过weblogic,关闭不完全的情况。

解决:

在自己所建的weblogic的域中找到“WLS_DIAGNOSTICS000000.DAT”文件,把它删掉,重启weblogic就可以了。

比如我运行该项目的域是base_domain。根据目录找到该域:

接着找到 servers -> AdminServer -> data -> store -> diagnostics 中找到 “WLS_DIAGNOSTICS000000.DAT”文件 删掉。

在删除 “WLS_DIAGNOSTICS000000.DAT”文件时,可能会出现在使用中,把进程关掉,再删除。重启eclipse和weblogic就可以了,问题就解决了。


经验分享 程序员 微信小程序 职场和发展