Sono uno sviluppatore .NET, ma per il mio progetto corrente ho bisogno di utilizzare Google Caja, un progetto Java. Uh Oh!Impossibile avviare java progam! NoClassDefFoundError?
Ho seguito la guida su http://code.google.com/p/google-caja/wiki/RunningCaja sul mio computer Windows, ma non riesco a far funzionare il programma. La riga di comando che suggeriscono non ha funzionato, così ho cd'd nella directory formica-giare e ha cercato di correre plugin.jar:
D:\java\caja\svn-changes\pristine\ant-jars>java -cp . -jar pluginc.jar -i test.htm
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException
at com.google.caja.plugin.PluginCompilerMain.<init>(PluginCompilerMain.java:78)
at com.google.caja.plugin.PluginCompilerMain.main(PluginCompilerMain.java:368)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.cli.ParseException
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:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 2 more
Che cosa significa tutto questo?
Ho anche provato il file: /// d: /java/caja/svn-changes/pristine/ant-jars/test.htm invece di test.htm. Guardando alla fonte, sembra che il file param è un Uri ...
Ho anche provato in esecuzione su IKVM pluginc e poi non preoccuparsi di Java, ma che si avvicinò con la ClassDefNotFoundException troppo ...
grazie!
modifica: grazie a tutti per l'aiuto finora :) ancora bloccato. per favore perseverare con me, questo potrebbe essere l'inizio di uno sviluppatore .net che passa alle bellissime tecnologie OSS!
d:\java\caja\svn-changes\pristine\ant-jars>java -cp .\*.* com.google.caja.plugin.PluginCompilerMain
=> NoClassDefFoundError: /\commons-cli/jar
D:\java\caja\svn-changes\pristine\ant-jars>java -cp .\*.*;..\third_party\java\jakarta_commons\*.* com.google.caja.plugin.PluginCompilerMain
=> Could not find the main class: com.google.caja.plugin.PluginCompilerMain
C'è un modo per eseguirlo dato il codice nel file build.xml?
L'esecuzione di formica è ok per compilare tutto. posso usare lo script ant per eseguire com.google.caja.plugin.PluginCompilerMain.main? – mcintyre321
+1 Bel riassunto dei problemi qui – Ash
@ mcintyre321 - se hai un form ant, allora 'ant jars' dovrebbe scaricare tutti i jar in una directory per te. Puoi quindi usare '-cp dir/*' per includerli tutti (dove 'dir' è la directory in cui li inserisce), il che semplifica molto le cose. – Chris