![]() |
![]() |
|
| Index | Recent Threads | Unanswered Threads | Who's Online | User List | Help |
|
|
| No member browsing this thread |
|
Thread Status: Active Total posts in this thread: 8
|
|
| Author |
|
|
Newbie Joined: Aug 18, 2009 Post Count: 3 Status: Offline |
I'm trying to get started with DataNucleus 1.1.5, and when I run the SchemaTool (using the Eclipse DataNucleus 1.0.0.m2 plugin in Eclipse 3.5) I get the following exception: ----- DataNucleus SchemaTool (version 1.1.5) : Creation of the schema Exception in thread "main" java.lang.NoClassDefFoundError: javax/jdo/metadata/TypeMetadata at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:242) at javax.jdo.JDOHelper$18.run(JDOHelper.java:1944) at java.security.AccessController.doPrivileged(Native Method) at javax.jdo.JDOHelper.forName(JDOHelper.java:1941) at javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1152) at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:800) at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:695) at org.datanucleus.store.rdbms.SchemaTool.getPMFForMode(SchemaTool.java:491) at org.datanucleus.store.rdbms.SchemaTool.main(SchemaTool.java:231) ----- I have the following in my CLASSPATH: asm-3.2.jar datanucleus-core-1.1.5.jar datanucleus-enhancer-1.1.4.jar (there seems to be no 1.1.5 jar) datanucleus-rdbms-1.1.5.jar jdo-api-2.3-ea.jar (also happens with jdo-api-2.2.jar) log4j-1.2.15.jar mysql-connector-java-5.1.8-bin.jar The jars from version 1.1.4 have another problem: ----- Exception in thread "main" java.lang.IllegalArgumentException: no such option dumpDdl at org.datanucleus.util.CommandLine.hasOption(CommandLine.java:246) at org.datanucleus.store.rdbms.SchemaTool.setCommandLineArgs(SchemaTool.java:856) at org.datanucleus.store.rdbms.SchemaTool.main(SchemaTool.java:137) ----- This second problem is already fixed in 1.1.5 (http://www.jpox.org/servlet/jira/browse/NUCRDBMS-199), but I can't use it because of the NoClassDefFoundError. How can I fix this? |
||
|
|
Expert UK Joined: Mar 13, 2004 Post Count: 5233 Status: Offline |
Perhaps if you look at the release notes of 1.1.5, e.g "core" you may find some change to JDO2.3 jar, as per what was released in the zip file distributions. ---------------------------------------- -Andy ![]() ![]() |
||
|
|
Newbie Joined: Aug 18, 2009 Post Count: 3 Status: Offline |
Thanks, I found jdo2-api-2.3-eb.jar in datanucleus-accessplatform-full-deps-1.1.5.zip, put it in the CLASSPATH in place of jdo2-api-2.3-ea.jar and that solved the problem. However, I must be missing something, but I didn't find a release notes file after looking in the following places: - in the datanucleus core download directory at http://sourceforge.net/projects/datanucleus/files/datanucleus-core/1.1.5/) - in datanucleus-core-1.1.5-src.zip - in the documentation at http://www.datanucleus.org/products/accessplatform/index.html - on sourceforge's release notes page at http://sourceforge.net/project/shownotes.php?release_id=696434 - on the wiki release page at http://www.jpox.org/servlet/wiki/display/ENG/Release+and+Plans There was only LICENSE.TXT, NOTICE.TXT, README.BUILD and README.TXT, none of which contained the information. I saw on the Apache JDO pages (http://db.apache.org/jdo/) that this change had been made in the source, but wasn't in the latest available download on that site. Maybe the release notes should be placed next to the downloads for each plugin? But thanks for the tip... ---------------------------------------- [Edit 1 times, last edit by phineas919 at Aug 19, 2009 9:06:22 AM] |
||
|
|
Expert UK Joined: Mar 13, 2004 Post Count: 5233 Status: Offline |
If people want to look in many odd places (IMHO) then that is up to them at the end of the day. No matter where I put release info someone will look elsewhere. All projects I know of are managed using JIRA (or equivalent). DataNucleus is no different. Announcements of releases are placed on the forum, just like http://www.jpox.org/servlet/forum/viewthread_thread,5669 and say clearly refer to JIRA for details. Similarly under News on SF, which says consult JIRA for more information. Downloads on the website points to our M2 repo and there you can easily find any releases of jdo2-api when Apache JDO is too inefficient to release it themselves. Simples. Obviously if people want better they could be commercial clients. ---------------------------------------- -Andy ![]() ![]() |
||
|
|
Novice Joined: Apr 17, 2009 Post Count: 27 Status: Offline |
use jdo2-api-2.3-eb <dependency> <groupId>javax.jdo</groupId> <artifactId>jdo2-api</artifactId> <version>2.3-eb</version> <type>jar</type> </dependency> from http://www.datanucleus.org/downloads/maven2/ pls change Topic to [Solved] ---------------------------------------- I Wouldn't do whtat i couldn't say. *dough* |
||
|
|
Newbie Spain Joined: Feb 3, 2010 Post Count: 2 Status: Offline |
The question that remains for me though is this point, quoting phineas919: "... on the Apache JDO pages (http://db.apache.org/jdo/) ... this change had been made in the source, but wasn't in the latest available download on that site." The point is, the jdo2-api-2.3 jar you download from db.apache.org/jdo does not contain the class javax.jdo.metadata.TypeMetadata and the jar that you download from datanucleus.org, does. Please excuse my ignorance, but what's this with jdo2-api-2.3-ea, -eb, -ec.jar? On apache.org they offer -ea (which I read to be Early Access), on datanucleus.org there are -eb.jar and -ec.jar. How come the difference? Where does this class come from? To be able to include this jar as an external library I need to be able to defend what jars I'm proposing and it would be good if I understood what they are... Thanks a lot. |
||
|
|
Expert UK Joined: Mar 13, 2004 Post Count: 5233 Status: Offline |
As has been said in other posts, and also in the docs to some degree, all ea, eb, ec jars are built from SVN trunk of Apache JDO. The -ea is their "early access", but sadly, being an Apache project, they don't provide an efficient release process and so have not made any releases since, so we provide a the -eb and -ec snapshot jars for them as two timepoints after that. As can be seen from (public) Apache JDO SVN they decided to rename ComponentMetadata to TypeMetadata after the ea release. Obviously, if this is an issue for you, then you could offer your time to that project to make timely releases, something that we'd be grateful for ... ---------------------------------------- -Andy ![]() ![]() |
||
|
|
Newbie Spain Joined: Feb 3, 2010 Post Count: 2 Status: Offline |
Thank you! In my case, and perhaps in other cases, is that I had not expected to need a not-yet-released version of Apache JDO. The error reported in the post occurs if you use 2.2 -- their latest stable release. I was actually convinced that "required dependencies" page for DataNucleus said JDO version 2.2, which it does not, it says 2.3-ec. With respect to offering to making releases for the JDO project, next time I have some time to spare I'll consider it. In any case, thanks again. |
||
|
|
|
|
|
Current timezone is GMT Mar 15, 2010 6:32:00 PM |