2017-01-05 34 views
4

我的Windows 10的機器上開始播放項目有問題(在Win 7的罰款)遊戲框架:無法加載JNotify本地庫

當我做「激活運行」我得到如下:

Error loading library, java.library.path=C:\Program Files\Java\jdk1.8.0_111\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\cygwin64\usr\local\bin;C:\cygwin64\bin;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client;C:\Program Files\Intel\iCLS Client;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\WiFi\bin;C:\Program Files\Common Files\Intel\WirelessCommon;C:\Program Files\Java\jdk1.8.0_111\bin;C:\Program Files\PostgreSQL\9.6\bin;C:\Program Files\Git\cmd;C:\dev\utils\activator-1.3.5-minimal;C:\Users\shuda\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Heroku\bin;.;C:\dev\projects\energywatch-portal-bk\target\native_libraries\64bits 

Cannot load the JNotify native library (no jnotify_64bit in java.library.path) 
Play will check file changes for each request, so expect degraded reloading performace. 

--- (Running the application from SBT, auto-reloading is enabled) --- 

[info] play - Listening for HTTP on /0:0:0:0:0:0:0:0:9000 

(Server started, use Ctrl+D to stop and go back to the console...) 

[success] Compiled in 1s 

我已經嘗試了很多沒有成功的事情。我試着從改變:

addSbtPlugin( 「com.typesafe.play」 % 「SBT-插件」 % 「2.2.2」)

addSbtPlugin(「com.typesafe.play 「% 」SBT-插件「 % 」2.3.2「)

,我得到另一個錯誤:

java.lang.NoClassDefFoundError: play/Project$ 
     at com.typesafe.sbt.SbtEchoPlay$.tracePlaySettings(SbtEchoPlay.scala:19) 
     at com.typesafe.sbt.SbtEchoPlay$.echoPlaySettings$lzycompute(SbtEchoPlay.scala:16) 
     at com.typesafe.sbt.SbtEchoPlay$.echoPlaySettings(SbtEchoPlay.scala:16) 
... 
Caused by: java.lang.ClassNotFoundException: play.Project$ 
     at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
     at com.typesafe.sbt.SbtEchoPlay$.tracePlaySettings(SbtEchoPlay.scala:19) 
     at com.typesafe.sbt.SbtEchoPlay$.echoPlaySettings$lzycompute(SbtEchoPlay.scala:16) 
     at com.typesafe.sbt.SbtEchoPlay$.echoPlaySettings(SbtEchoPlay.scala:16) 
     ... 

所以,這裏是我的環境設置當前(改變SBT-插件導致第2期)

scalaVersion:= 「2.10.3」 - >從build.sbt

addSbtPlugin( 「com.typesafe.play」 % 「SBT-插件」 % 「2.2.2」) - 從plugins.sbt

>

sbt.version = 0.13.1 - >從build.properties

同樣,我在Win 10(64位)

真的需要這裏的一些援助,一直停留了幾天。

+0

'java -version'的輸出是什麼? – Salem

+0

Java版本 「1.8.0_111」 的Java(TM)SE運行時環境(建1.8.0_111-B14) 的HotSpot的Java(TM)64位服務器VM(建立25.111-B14,混合模式) – syedihuda

+0

在Windows上工作是一個巨大的性能問題是不是? + –

回答

4

該消息意味着Play無法找到jnotify庫,因此它將使用內部進程檢查文件更改(即重新編譯並在文件更改時重新啓動應用程序)。它不應該阻止你使用框架,但性能可能比使用jnotify更糟糕。無論哪種方式,您可以從https://sourceforge.net/projects/jnotify/下載JNotify並安裝它(只需將jnotify_64bit.dll複製到C:\Program Files\Java\jdk1.8.0_111\bin),並且該消息應該消失。

+0

在64位Linux上添加:我最終從這裏下載:https://sourceforge.net/projects/jnotify/files/jnotify/它有一個64位的Linux目錄和一個文件libnotify.so,其中我必須使用jnotify jar文件進行反駁。 (FYI github鏈接,帶我到該頁面:https://github.com/aerofs/jnotify) – manyways

+0

@manyways詳細描述的答案會對linux用戶更有幫助 –