Hi Leute,
ich schreibe derzeit eine Seminararbeit über design by contract. Eigentlich eine schöne Sache, wenn doch die vorhandenen Frameworks nicht so viele Probleme verursachen würden. Auf der englischen Artikelseite von DBC auf Wikipedia ist eine lange Liste von FWs die in Java zur Verfügung stehen. Ich habe mich für das FW "Modern Jass" entschieden, weil es eigentlich leicht umzusetzen ist.
Ich bin bei einem Ersten Test nach dieser Anleitung vorgegangen:
http://modernjass.sourceforge.net/gettingStarted.html
1. Die benötigte *.jar-Datei als externe Bib einbegunden.
2. Example Code kopiert und ausgeführt, funktioniert wunderbar.
3. per "javac -cp jass.modern.core-20070519.jar foo/Bar.java" kompiliert. Es wurden zwei Dateien erstellt, wie in der Doku beschrieben, funktioniert also auch wunderbar.
4. Jetzt sollte das Ganze mit dem Befehl "java -javaagent:jass.modern.core-20070519.jar foo.Bar" ausgeführt werden. Allerdings klappt das nicht. Das Ergebnis, welches normalerweise angezeigt werden sollte, sieht man auf der beschriebenen Seite (letzte Grafik).
Mein Ergebnis sieht allerdings so aus:
Kann mir jemand sagen, wodran es liegen könnte? Verwendet wird die aktuelle Java Version.
lg,
dani
ich schreibe derzeit eine Seminararbeit über design by contract. Eigentlich eine schöne Sache, wenn doch die vorhandenen Frameworks nicht so viele Probleme verursachen würden. Auf der englischen Artikelseite von DBC auf Wikipedia ist eine lange Liste von FWs die in Java zur Verfügung stehen. Ich habe mich für das FW "Modern Jass" entschieden, weil es eigentlich leicht umzusetzen ist.
Ich bin bei einem Ersten Test nach dieser Anleitung vorgegangen:
http://modernjass.sourceforge.net/gettingStarted.html
1. Die benötigte *.jar-Datei als externe Bib einbegunden.
2. Example Code kopiert und ausgeführt, funktioniert wunderbar.
3. per "javac -cp jass.modern.core-20070519.jar foo/Bar.java" kompiliert. Es wurden zwei Dateien erstellt, wie in der Doku beschrieben, funktioniert also auch wunderbar.
4. Jetzt sollte das Ganze mit dem Befehl "java -javaagent:jass.modern.core-20070519.jar foo.Bar" ausgeführt werden. Allerdings klappt das nicht. Das Ergebnis, welches normalerweise angezeigt werden sollte, sieht man auf der beschriebenen Seite (letzte Grafik).
Mein Ergebnis sieht allerdings so aus:
Code:
C:\Users\me\workspace\MJ\src>java -javaagent:jass.modern.core-20070519.jar foo.Bar 1 2 3
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(Unknown Source)
at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(Unknown Source)
Caused by: java.lang.NullPointerException
at jass.modern.core.compile.ContractJavaCompiler.<init>(ContractJavaCompiler.java:114)
at jass.modern.core.compile.ContractJavaCompiler.getInstance(ContractJavaCompiler.java:151)
at jass.modern.core.bytecode.contracts.ContractClassFileTransformer.<init>(ContractClassFileTransformer.java:51)
at jass.modern.core.bytecode.PreMain.premain(PreMain.java:74)
... 6 more
FATAL ERROR in native method: processing of -javaagent failed
Kann mir jemand sagen, wodran es liegen könnte? Verwendet wird die aktuelle Java Version.
lg,
dani