使用' play run'播放框架ClassNotFoundException。但是在“开始播放”中可以正常使用'

时间:2014-07-24 19:31:23

标签: scala playframework-2.0

当我尝试运行命令' play run'时,我遇到了一些类路径问题,但是当我使用' play start'一切都像魅力一样。

一些背景知识 我正在尝试使用Avro Serialization作为Play应用程序创建一个Kafka Producer。

我正在使用TypeSafe配置库将属性传递给Kafka Producer。一些属性是关于序列化程序类,键序列化程序类,分区程序类。

文件夹结构

基地 - 控制器    - KafkaProducer - Util    - 序列化器      - A级      - B级

类的包结构是com.abc.xyz.KafkaProducer,com.abc.qwer.classA等。

我已经确认在目标文件夹中生成了各自的类。

我使用' play run'启动应用程序。当生成器尝试加载相应的类时,它会抛出ClassNotFoundException。

! Internal server error, for (POST) [/publish/topic1] ->

java.lang.ExceptionInInitializerError: null
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$2$$anonfun$apply$4.apply(routes_routing.scala:61) ~[na:na]
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$2$$anonfun$apply$4.apply(routes_routing.scala:61) ~[na:na]
    at play.core.Router$HandlerInvoker$$anon$6.call(Router.scala:170) ~[play_2.10-2.2.4.jar:2.2.4]
    at play.core.Router$Routes$class.invokeHandler(Router.scala:375) ~[play_2.10-2.2.4.jar:2.2.4]
    at Routes$.invokeHandler(routes_routing.scala:15) ~[na:na]
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$2.apply(routes_routing.scala:61) ~[na:na]
Caused by: java.lang.ClassNotFoundException: com.abc.qwer.classA
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202) ~[na:1.6.0_65]
    at java.security.AccessController.doPrivileged(Native Method) ~[na:1.6.0_65]
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) ~[na:1.6.0_65]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306) ~[na:1.6.0_65]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ~[na:1.6.0_65]
    at java.lang.Class.forName0(Native Method) ~[na:1.6.0_65]
[error] application - Error while rendering default error page
scala.MatchError: java.lang.ExceptionInInitializerError (of class java.lang.ExceptionInInitializerError)
    at play.api.GlobalSettings$class.onError(GlobalSettings.scala:131) ~[play_2.10-2.2.4.jar:2.2.4]
    at play.api.DefaultGlobal$.onError(GlobalSettings.scala:189) [play_2.10-2.2.4.jar:2.2.4]
    at play.core.server.Server$class.logExceptionAndGetResult$1(Server.scala:73) [play_2.10-2.2.4.jar:2.2.4]
    at play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:83) [play_2.10-2.2.4.jar:2.2.4]
    at play.core.server.Server$$anonfun$getHandlerFor$4.apply(Server.scala:81) [play_2.10-2.2.4.jar:2.2.4]
    at scala.util.Either$RightProjection.flatMap(Either.scala:523) [scala-library.jar:na]

当我使用' play start'。一切正常。

任何帮助将不胜感激。感谢。

0 个答案:

没有答案