【问题标题】:Can't run BAM 2.3.0 server due error 'java.lang.NoClassDefFoundError: org/github/jamm/MemoryMeter'由于错误“java.lang.NoClassDefFoundError:org/github/jamm/MemoryMeter”而无法运行 BAM 2.3.0 服务器
【发布时间】:2013-07-22 12:00:38
【问题描述】:

我尝试在 Windows 64 Pro 上启动 BAM 服务器,但抛出异常(也具有评估的管理权限)...

[2013-07-22 15:45:51,575] 信息 {org.wso2.carbon.core.internal.CarbonCoreActivator} - 启动 WSO2 碳... [2013-07-22 15:45:51,576] INFO {org.wso2.carbon.core.internal.CarbonCoreActivator} - 运行 系统:Windows 8 6.2,amd64 [2013-07-22 15:45:51,576] 信息 {org.wso2.carbon.core.internal.CarbonCoreActivator} - Java 主页
: C:\Program Files\Java\jdk1.7.0_25\jre [2013-07-22 15:45:51,576] 信息 {org.wso2.carbon.core.internal.CarbonCoreActivator} - Java 版本:1.7.0_25 [2013-07-22 15:45:51,576] 信息 {org.wso2.carbon.core.internal.CarbonCoreActivator} - Java VM
: Java HotSpot(TM) 64-Bit Server VM 23.25-b01,Oracle Corporation

...

[2013-07-22 15:45:55,725] 信息 {org.apache.cassandra.service.AbstractCassandraDaemon} - 类路径: .\lib;C:\程序 Files\Java\jdk1.7.0_25\lib\tools.jar;;.\bin\org.wso2.carbon.bootstrap-4.1.0.jar;.\bin\tcpmon-1.0.jar;.\bin\tomcat- juli-7.0.34.jar;;.\lib\commons-lang-2.6.0.wso2v1.jar [2013-07-22 15:45:55,727] 信息 {org.apache.cassandra.utils.CLibrary} - 未找到 JNA。本机方法将被禁用。

...

[2013-07-22 15:45:56,381] 错误 {org.apache.cassandra.service.AbstractCassandraDaemon} - 异常 启动时遇到java.lang.NoClassDefFoundError: org/github/jamm/MemoryMeter 在 org.apache.cassandra.db.Memtable.(Memtable.java:118) 在 org.apache.cassandra.db.DataTracker.init(DataTracker.java:301) 在 org.apache.cassandra.db.DataTracker.(DataTracker.java:63) 在 org.apache.cassandra.db.ColumnFamilyStore.(ColumnFamilyStore.java:230) 在 org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:357) 在 org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:329) 在 org.apache.cassandra.db.Table.initCf(Table.java:371) 在 org.apache.cassandra.db.Table.(Table.java:304) 在 org.apache.cassandra.db.Table.open(Table.java:119) 在 org.apache.cassandra.db.Table.open(Table.java:97) 在 org.apache.cassandra.db.SystemTable.checkHealth(SystemTable.java:274) 在 org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:171) 在 org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:353) 在 org.wso2.carbon.cassandra.server.CassandraServerController$1.run(CassandraServerController.java:48) 在 java.lang.Thread.run(Thread.java:724) 引起: java.lang.ClassNotFoundException:org.github.jamm.MemoryMeter 在 org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:455) 在 org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) 在 org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) 在 org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 15 更多 启动时遇到异常:org/github/jamm/MemoryMeter [2013-07-22 15:45:57,341] 错误 {org.apache.cassandra.service.AbstractCassandraDaemon} - 异常 线程 Thread[OptionalTask​​s:1,5,main] java.lang.NoClassDefFoundError: org/github/jamm/MemoryMeter 在 org.apache.cassandra.db.Memtable.(Memtable.java:118) 在 org.apache.cassandra.db.DataTracker.init(DataTracker.java:301) 在 org.apache.cassandra.db.DataTracker.(DataTracker.java:63) 在 org.apache.cassandra.db.ColumnFamilyStore.(ColumnFamilyStore.java:230) 在 org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:357) 在 org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:329) 在 org.apache.cassandra.db.Table.initCf(Table.java:371) 在 org.apache.cassandra.db.Table.(Table.java:304) 在 org.apache.cassandra.db.Table.open(Table.java:119) 在 org.apache.cassandra.db.Table.open(Table.java:97) 在 org.apache.cassandra.db.Table$2.apply(Table.java:578) 在 org.apache.cassandra.db.Table$2.apply(Table.java:575) 在 com.google.common.collect.Iterators$9.transform(Iterators.java:845) 在 com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48) 在 org.apache.cassandra.db.ColumnFamilyStore.all(ColumnFamilyStore.java:1649) 在 org.apache.cassandra.db.MeteredFlusher.countFlushingBytes(MeteredFlusher.java:118) 在 org.apache.cassandra.db.MeteredFlusher.run(MeteredFlusher.java:45) 在 org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor$UncomplainingRunnable.run(DebuggableScheduledThreadPoolExecutor.java:79) 在 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 在 java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) 在 java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 在 java.lang.Thread.run(Thread.java:724)

【问题讨论】:

  • 我在使用 WSO2 消息代理时遇到了类似的问题。从 Eclipse 中运行 WSO2 MB(启动配置的服务器)时,我遇到了类似的问题。在 Eclipse 之外启动服务器时,Message Broker 服务器运行良好。结合以下答案中的“javaagent”修复并不能解决问题,至少在我的配置中 - Win7 64。

标签: wso2


【解决方案1】:

将以下内容添加到 wso2server.sh 文件中

-javaagent:"path/to/jamm/jar" \

举个例子

-javaagent:"$CARBON_HOME/repository/components/plugins/jamm_0.2.5.wso2v2.jar" \

【讨论】:

  • 对于 Windows,对 wso2server.bat 文件的调整应该更像这样:-javaagent:"%CARBON_HOME%\repository\components\plugins\jamm_0.2.5.wso2v2.jar"
【解决方案2】:

编辑\bin\yajsw\conf\wrapper.conf。 对于 WSO2 BAM 2.5.0 版,在文件末尾添加一行。

wrapper.java.additional.26 = -javaagent:"${cabon_home}\\repository\\components\\plugins\\jamm_0.2.5.wso2v2.jar"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多