AppEngine JPA enhance stopped working
I'm developing a demo app using AppEngine and JPA, hence using IDEA's GAE plugin.
I have a few simple entities, and till just recently my deployment worked w/o any problems.
But now, w/o any change that would make sense to me, it stopped working.
It looks like for some unknown reason the enhancing is not there any more -- debugging the code, no PersistenceCapable interface present in the entity class.
Getting the "nutorious" error:
SEVERE: Found Meta-Data for class com.foobar.xyz.server.domain.AbcConfig but this class is not enhanced!! Please enhance the class before running DataNucleus.
The "Enhance ..." check-box is enabled, with the contents of "com.foobar.xyz.server.domain" package.
Any idea what could go/be wrong?
Or where to look for log -- if there is one while enhance is running?
I'm running on Mac OS X with IDEA 9.0.3.
请先登录再写评论。
Are there any exceptions in <idea.system.path>/log/idea.log?
>
>
>
>
>
>
--
Nikolay Chashnikov
Software Developer
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"
Unless I'm looking at the wrong place, I don't even have a log dir:
Skywalker:IntelliJIdea90 alesj$ pwd
/Users/alesj/Library/Caches/IntelliJIdea90
Skywalker:IntelliJIdea90 alesj$ ls -la
total 0
drwxr-xr-x 17 alesj staff 578 Aug 17 09:04 .
drwxr-xr-x 56 alesj staff 1904 Aug 17 09:03 ..
drwxr-xr-x 3 alesj staff 102 Aug 17 01:52 GoogleAppEngine
drwxr-xr-x 5 alesj staff 170 Aug 17 01:47 LocalHistory
drwxr-xr-x 4 alesj staff 136 Aug 17 01:43 Maven
drwxr-xr-x 12 alesj staff 408 Aug 17 01:43 caches
drwxr-xr-x 8 alesj staff 272 Aug 17 02:32 compiler
drwxr-xr-x 4 alesj staff 136 Aug 17 01:46 conversion
drwxr-xr-x 7 alesj staff 238 Aug 17 02:34 facets
drwxr-xr-x 2 alesj staff 68 Aug 17 09:04 httpFileSystem
drwxr-xr-x 6 alesj staff 204 Aug 17 01:44 ideTalk
drwxr-xr-x 22 alesj staff 748 Aug 17 01:43 index
drwxr-xr-x 108 alesj staff 3672 Aug 17 02:06 jars
drwxr-xr-x 5 alesj staff 170 Aug 17 02:30 jsp_related_caches
drwxr-xr-x 8 alesj staff 272 Aug 17 09:44 stat
drwxr-xr-x 3 alesj staff 102 Aug 17 01:43 vcs
drwxr-xr-x 5 alesj staff 170 Aug 17 01:55 vcsCache
Skywalker:IntelliJIdea90 alesj$
Even locate cannot find any idea.log:
Skywalker:~ alesj$ locate idea.log
Skywalker:~ alesj$
Please look in ~/Library/Logs/IntelliJIDEA*/ directory.
>
>
--
Nikolay Chashnikov
Software Developer
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"
OK, found, thanks.
But looks like nothing useful in there -- no sign of enhance error.
2010-08-17 12:19:45,910 [ 191536] INFO - s.communicator.p2p.NetworkUtil - Call [http://10.11.10.234:2864/] AddOnlineUser.addOnlineUser([10.11.10.234, alesj, 2864, [trunk], [AVAILABLE, 0]]) connect timed out
<Running my demo app here -- with "Build artifact .." on make>
22010-08-17 12:22:11,405 [ 337031] INFO - ij.compiler.impl.CompileDriver - COMPILATION STARTED
2010-08-17 12:22:11,417 [ 337043] INFO - lij.compiler.impl.CompilerUtil - Initial VFS refresh took 9 ms: 0 min 0sec
2010-08-17 12:22:11,473 [ 337099] INFO - lij.compiler.impl.CompilerUtil - COMPILATION FINISHED; Errors: 0; warnings: 0 took 68 ms: 0 min 0sec
2010-08-17 12:22:11,481 [ 337107] INFO - ij.compiler.impl.CompileDriver - COMPILATION STARTED
2010-08-17 12:22:11,487 [ 337113] INFO - lij.compiler.impl.CompilerUtil - Initial VFS refresh took 5 ms: 0 min 0sec
2010-08-17 12:22:11,512 [ 337138] INFO - lij.compiler.impl.CompilerUtil - COMPILATION FINISHED; Errors: 0; warnings: 0 took 31 ms: 0 min 0sec
Anything else I should look for?
My entities are dependent on classes outside this module.
e.g.
* common-module -- some annotations and interfaces
* entity-module (depends on common-module) -- actual domain model
@SomeAnn
@Entity
FooBar implements XEntity -- where @SomeAnnd and Entity classes is part of common-module
Could this be a problem?
I'm able to run the stuff w/o problems via mvn -- if I add the enhance plugin + make IDEA not "make + build" itself:
<plugin>
<groupId>org.datanucleus</groupId>
<artifactId>maven-datanucleus-plugin</artifactId>
<version>2.0.0-release</version>
<configuration>
<metadataIncludes>com/foobar/hack/server/domain/*.class</metadataIncludes>
<verbose>true</verbose>
<api>JPA</api>
</configuration>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>enhance</goal>
</goals>
</execution>
</executions>
</plugin>
But this still doesn't explain it to me what happens with plugin's (non-existent) ehancing.
Which module has AppEngine Facet? Currently IDEA runs the enhancer only for classes from the module containing AppEngine facet.
>
>
>
>
--
Nikolay Chashnikov
Software Developer
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"
The module with entities -- the right one.
The other module just contains some simple interfaces and annotations that entities use -- which should not be a problem afais.
Like I said, it used to work, but all of a sudden, due to some (from the 10.000feet) unrelated changes, it stopped.
And I can now get it to work using datanucleus-enhance Maven2 plugin -- which (if you ask me) shows the config is OK.
Could you please replace <IDEA_HOME>/bin/log.xml file by the attached one to enable additional logging, reproduce the problem and send me idea.log file?
Attachment(s):
log.xml