Search code examples
karafopendaylight

opendaylight Boron crash when feature install odl-dlux-core


I am using distribution-karaf-0.5.0-Boron version of opendayligth controller on Windows 7 x64 and Java8 101 .

When I run

feature:install odl-dlux-core

I got such error:

opendaylight-user@root>feature:install odl-dlux-core
Uncaught error from thread [opendaylight-cluster-data-akka.persistence.dispatche
rs.default-plugin-dispatcher-23] shutting down JVM since 'akka.jvm-exit-on-fatal
-error' is enabled for ActorSystem[opendaylight-cluster-data]
java.lang.UnsatisfiedLinkError: Could not load library. Reasons: [no leveldbjni6
4-1.8 in java.library.path, no leveldbjni-1.8 in java.library.path, E:\odl\distr
ibution-karaf-0.5.0-Boron\data\cache\bundle202\version0.0\bundle.jar-lib\0\META-
INF\native\windows64\leveldbjni.dll: Can't find dependent libraries, E:\odl\dist
ribution-karaf-0.5.0-Boron\data\tmp\leveldbjni-64-1-2257453289313732372.8: Can't
 find dependent libraries]
        at org.fusesource.hawtjni.runtime.Library.doLoad(Library.java:187)
        at org.fusesource.hawtjni.runtime.Library.load(Library.java:143)
        at org.fusesource.leveldbjni.JniDBFactory.<clinit>(JniDBFactory.java:48)
        at akka.persistence.journal.leveldb.LeveldbStore$class.leveldbFactory(Le
veldbStore.scala:44)
        at akka.persistence.journal.leveldb.LeveldbJournal.leveldbFactory(Leveld
bJournal.scala:22)
        at akka.persistence.journal.leveldb.LeveldbStore$class.preStart(LeveldbS
tore.scala:170)
        at akka.persistence.journal.leveldb.LeveldbJournal.preStart(LeveldbJourn
al.scala:22)
        at akka.actor.Actor$class.aroundPreStart(Actor.scala:489)
        at akka.persistence.journal.leveldb.LeveldbJournal.aroundPreStart(Leveld
bJournal.scala:22)
        at akka.actor.ActorCell.create(ActorCell.scala:590)
        at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:461)
        at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
        at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:282)
        at akka.dispatch.Mailbox.run(Mailbox.scala:223)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:617)
        at java.lang.Thread.run(Thread.java:745)

I have made some changes follow this link: Karaf exception is thrown while installing org.fusesource.leveldbjni

Included:

  • Adding felix.native.osname.alias.windows7=windows 7,win32 to etc/system.properties
  • Change karaf.framework=felix in custom.properties
  • And I have leveldbjni auto download into my local maven respo.

But I still got the same problem, am I missing something ?


Solution

  • Finally resoled by installing vc 2010 x64 redistribuition package.
    https://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe

    Steps :

    1. download "[Dependency Walker][1]", drag develdbjni.dll into dependency walker.
    2. you can see which dll is missing in DW.
    3. google for which package contains the losted dll.