ちょっとしたサイドプロジェクトでGAE+Scalaを使用して評価しようとしていますが、Datanucleusエンハンサーの問題を乗り越えることができないようです。
私のプロジェクトは、Scalaの性質を追加した基本的なGuestBookサンプルアプリケーションです。次に、文字列を取得し、それにいくつかのものを追加して、変更された文字列を返すメソッドを使用してScalaオブジェクトを追加しました。次に、動作するGuestBookの例を変更して、このScalaメソッドへの呼び出しを追加しました。これはすべて「HelloWorld」レベルのものです。
私の問題は、エンハンサーから次の例外が発生することです
DataNucleus Enhancer (version 1.1.4) : Enhancement of classes
Aug 31, 2011 9:38:35 PM org.datanucleus.metadata.MetaDataManager loadClasses
SEVERE: Class "guestbook.server.Slave$" was not found in the CLASSPATH. Please check your specification and your CLASSPATH.
org.datanucleus.exceptions.ClassNotResolvedException: Class "guestbook.server.Slave$" was not found in the CLASSPATH. Please check your specification and your CLASSPATH.
at org.datanucleus.JDOClassLoaderResolver.classForName(JDOClassLoaderResolver.java:250)
at org.datanucleus.JDOClassLoaderResolver.classForName(JDOClassLoaderResolver.java:415)
at org.datanucleus.metadata.MetaDataManager.loadClasses(MetaDataManager.java:379)
at org.datanucleus.enhancer.DataNucleusEnhancer.getFileMetadataForInput(DataNucleusEnhancer.java:743)
at org.datanucleus.enhancer.DataNucleusEnhancer.enhance(DataNucleusEnhancer.java:545)
at org.datanucleus.enhancer.DataNucleusEnhancer.main(DataNucleusEnhancer.java:1252)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.google.appengine.tools.enhancer.Enhancer.execute(Enhancer.java:57 )
at com.google.appengine.tools.enhancer.Enhance.<init>(Enhance.java:60)
at com.google.appengine.tools.enhancer.Enhance.main(Enhance.java:41)
DataNucleus Enhancer completed with success for 0 classes. Timings : input=237 ms, enhance=0 ms, total=237 ms. Consult the log for full details
DataNucleus Enhancer completed and no classes were enhanced. Consult the log for full details
私はこれを調べて、エンハンサーのクラスパスにScala jarを追加することへの1つの参照を見ましたが、GAE用のGoogleのバージョンでこれを行う方法の指示はありません。Datanucleusが提供する指示は、GAEバージョンには存在しない設定を参照しています。
私は今少し途方に暮れています。このツールの組み合わせの初心者として私が見逃しているのは簡単なことであるに違いありませんが、それが何であるかはわかりません。
参考までに、Scala 2.9.0.1、GAE 1.5.2、およびEclipse IndigoビルドID:20110615-0604を実行しています。