2013-05-19 12 views
10

Ho appena scaricato il nuovo file jar per GreenDao per creare il mio DB per l'app che sto costruendo.manca il freemaker.jar di GreenDao

Dopo aver attraversato tutto il processo di modellazione miei entità e le connessioni tra di loro, ho cercato di eseguire il progetto generatore, ma ottenuto questo errore per la linea che ha generato il DB:

Exception in thread "main" java.lang.NoClassDefFoundError: freemarker/template/ObjectWrapper 
    at com.glide.talk.glide.model.generator.Model.main(Model.java:29) 
Caused by: java.lang.ClassNotFoundException: freemarker.template.ObjectWrapper 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
    ... 1 more 

La linea di questo è accaduto in è: new DaoGenerator().generateAll(schema, src); e ho nel percorso di build e nella cartella lib solo il file greendao-generator-1.3.0.jar.

Qualsiasi idea o soluzione sarà molto utile.

p.s.ok usare il freemaker.jar che era nella versione 1.2?

EDIT: per ora, ho scaricato this version da sourceforge e spero questo è in realtà quello che ho bisogno di usare.

risposta

8

Ho avuto un problema simile e ho scaricato il barattolo da http://mvnrepository.com/artifact/org.freemarker/freemarker che ha funzionato bene.

Quando date un'occhiata a build.gradle nel progetto DaoGenerator, troverete una dipendenza che punta esattamente a questo artefatto. Immagino che usare gradle per costruire il tuo progetto scarica automaticamente queste dipendenze proprio come fa Maven. Se non si desidera utilizzare entrambi, probabilmente è meglio scaricare e includere manualmente gli artefatti.

1

Ho avuto lo stesso errore ma stavo cercando di compilare il generatore greendao nel mio progetto principale, ma è necessario creare un modulo java per greenDao che non chiederà il marchio.

uso greendao-generatore all'interno del modulo Java e greendao all'interno progetto principale

si può seguire questo tutorial GreenDao and Android Studio tutorial

+0

Si prega di mente che è necessario puntare il sistema di corsa ad un JRE Java standard, non l'Android uno. Si trova nello schema di esecuzione -> "Usa JRE alternativo" – Vaiden

Problemi correlati