Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Playframework JNotify阻止播放应用程序的执行_Playframework_Playframework 2.0_Playframework 2.3 - Fatal编程技术网

Playframework JNotify阻止播放应用程序的执行

Playframework JNotify阻止播放应用程序的执行,playframework,playframework-2.0,playframework-2.3,Playframework,Playframework 2.0,Playframework 2.3,在升级之前,我们的应用程序是v2.1.1,我收到了关于缺少JNotify的警告。据我所知,没有伤害,没有犯规。但是,在迁移到v2.3.1后,警告已变成停止显示异常。我编译并尝试运行并接收以下输出: java.lang.NoClassDefFoundError: Could not initialize class net.contentobjects.jnotify.JNotify at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ

在升级之前,我们的应用程序是v2.1.1,我收到了关于缺少JNotify的警告。据我所知,没有伤害,没有犯规。但是,在迁移到v2.3.1后,警告已变成停止显示异常。我编译并尝试运行并接收以下输出:

java.lang.NoClassDefFoundError: Could not initialize class net.contentobjects.jnotify.JNotify
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at play.PlayReloader$$anon$1$$anon$7.removeWatch(PlayReloader.scala:113)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at play.PlayReloader$$anon$1.liftedTree1$1(PlayReloader.scala:119)
    at play.PlayReloader$$anon$1.jnotify$lzycompute(PlayReloader.scala:60)
    at play.PlayReloader$$anon$1.jnotify(PlayReloader.scala:40)
    at play.PlayReloader$$anon$1$$anonfun$10.apply(PlayReloader.scala:155)
    at play.PlayReloader$$anon$1$$anonfun$10.apply(PlayReloader.scala:155)
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
    at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
    at scala.collection.immutable.List.foreach(List.scala:318)
    at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
    at scala.collection.AbstractTraversable.map(Traversable.scala:105)
    at play.PlayReloader$$anon$1.<init>(PlayReloader.scala:155)
    at play.PlayReloader$class.newReloader(PlayReloader.scala:24)
    at play.Play$.newReloader(Project.scala:17)
    at play.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$1.reloader$lzycompute$1(PlayRun.scala:175)
    at play.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$1.play$PlayRun$class$$anonfun$$anonfun$$reloader$1(PlayRun.scala:175)
    at play.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$1.apply(PlayRun.scala:198)
    at play.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$1.apply(PlayRun.scala:98)
    at scala.Function9$$anonfun$tupled$1.apply(Function9.scala:35)
    at scala.Function9$$anonfun$tupled$1.apply(Function9.scala:34)
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
[trace] Stack trace suppressed: run last compile:run for the full output.
[error] (compile:run) java.lang.NoClassDefFoundError: Could not initialize class net.contentobjects.jnotify.JNotify
java.lang.NoClassDefFoundError:无法初始化类net.contentobjects.jnotify.jnotify
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:606)
播放时。PlayReloader$$anon$1$$anon$7。removeWatch(PlayReloader.scala:113)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:606)
播放时.PlayReloader$$anon$1.liftedTree1$1(PlayReloader.scala:119)
play.playroader$$anon$1.jnotify$lzycompute(playroader.scala:60)
PlayReloader$$anon$1.jnotify(PlayReloader.scala:40)
播放时.PlayReloader$$anon$1$$anonfun$10.apply(PlayReloader.scala:155)
播放时.PlayReloader$$anon$1$$anonfun$10.apply(PlayReloader.scala:155)
位于scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
位于scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
位于scala.collection.immutable.List.foreach(List.scala:318)
位于scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
位于scala.collection.AbstractTraversable.map(Traversable.scala:105)
播放时。播放重新加载程序$$anon$1。(播放重新加载程序。scala:155)
PlayReloader$class.newReloader(PlayReloader.scala:24)
play.play$.newReloader(Project.scala:17)
在play.PlayRun$$anonfun$PlayRun任务$1$$anonfun$apply$1.reloader$lzycompute$1(PlayRun.scala:175)
播放时.PlayRun$$anonfun$PlayRun任务$1$$anonfun$apply$1.play$PlayRun$class$$anonfun$$anonfun$$reloader$1(PlayRun.scala:175)
play.PlayRun$$anonfun$PlayRun任务$1$$anonfun$apply$1.apply(PlayRun.scala:198)
play.PlayRun$$anonfun$PlayRun任务$1$$anonfun$apply$1.apply(PlayRun.scala:98)
在scala.Function9$$anonfun$tupled$1.apply处(Function9.scala:35)
在scala.Function9$$anonfun$tupled$1.apply处(Function9.scala:34)
在scala.Function1$$anonfun$compose$1.apply处(Function1.scala:47)
[trace]堆栈跟踪被抑制:运行上次编译:运行完整输出。
[错误](编译:运行)java.lang.NoClassDefFoundError:无法初始化类net.contentobjects.jnotify.jnotify
我做了一些挖掘工作,我知道JNotify库应该是可用的,因为我在activator/repository/和user/.ivy2/cache/repository/中都找到了一个v0.94 jar(以及我的所有自定义依赖项)。[此外,我将它放在本地Maven存储库中,并将其作为一个依赖项添加到Build.scala中,在编译过程中,它似乎也没有发现任何问题。)是否需要某种手动过程?据我所知,应用程序应该可以使用它


(我知道在2.3.2版的发行说明中有一个关于JNotify的说明,但它似乎是另一个问题,并且在2.3.1版中没有提到一个关键的bug。)

进一步调查后,这似乎是由于v2.3.1中的一个错误造成的,该错误已在v2.3.2中得到解决。错误报告如下:。该错误的表现形式与错误报告中描述的不同,但重复该错误的过程涉及到一些相同的步骤。目前使用v2.3.1的人的解决方法很简单避免在activator控制台中使用“重新加载”命令。如果需要重新加载,请退出activator并重新启动它,因为此工作流不会导致此问题

编辑:找到其他错误报告——其中一个报告概述了遇到的问题


您应该尝试Play 2.3.2,其中包括修复,或者甚至可以尝试master。据我所知,changelist()中解决的问题发生在编译过程中,与删除JNotify watches有关。我的问题只发生在运行时(编译很好)。此外,由于插件依赖性,我无法移动到2.3.2。@applicius在进一步调查中,我相信您了解了一些情况。这似乎与我在上一条评论中链接的错误略有不同。我发现只有在尝试从控制台内“重新加载”时才会发生这种情况(类似于错误报告)。幸运的是,这很容易避免,所以我可以继续。如前所述,它已在2.3.2中修复。对于以前的2.3.x,除了解决方法外,没有其他方法。@applicius我理解,但不是每个人都能运行最新版本。例如,我们的项目依赖于play2war插件,该插件尚未与v2.3.2一起工作。