2017-01-05 28 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用户更有帮助 –