PDA

View Full Version : Klasse org.yuizilla.javascript.ErrorReporter und Maven



matrose
04.05.2011, 12:51 PM
Hallo,

nach einigen Versuchen mit der os-tierklinik habe ich nun angefangen ein OS-Projekt mirt Maven aufzubauen.

Dabei komme ich zu dem Problem, dass o.g. Klasse (org.yuizilla.javascript.ErrorReporter) bei der Initialisierung nicht gefunden wird,

In dem OpenSaga-Maven-Repo ist diese zwar enthalten (com.yahoo.platform.yui:yuicompressor:2.4.2) aber das gleiche Artefact gibt es auch im zentralen Maven Repository mit guten 300KB weniger und auch fehlt dort diese Klasse.

Da aber bei mir immer zunächst im zentralen Repository gesucht wird, bekomme ich immer die Version des Jars, wo diese Klasse nicht enthalten ist.

Diese Klasse finde ich auch in keinem anderen Maven Artefakt. (Was auch seltsam ist, dass in der zentralen Version eine Klasse org.mozzilla.javascript.ErrorReporter enthalten ist)

Was jemand, wie man dieses Problem lösen kann?

Danke schon mal!

shelmberger
04.05.2011, 01:30 PM
Also: Es gibt wirklich zwei verschiedene yuicompressor versionen. Einmal die offizielle, und dann unsere.

Die offizielle Version verhält sich arg "unsozial", weil sie einfach eine für die Javascript-Kompression veränderte Version von org.mozilla.javascript mitliefert, ohne diese umzubenennen. Damit funktioniert server-side javascript mit Rhino nicht mehr, wie es soll.

Deswegen haben wir eine Version erstellt, die alle org.mozilla.javascript Klassen in org.yuizilla.javascript umbenennt.

Diese Version hat den zusätzlichen Maven classifier "qs", damit Maven auch ja die richtige Version lädt.

Deswegen auch die Abhängigkeitsdefinition:


<dependency>
<groupId>com.yahoo.platform.yui</groupId>
<artifactId>yuicompressor</artifactId>
<version>2.4.2</version>
<classifier>qs</classifier>
</dependency>


Ich habe gerade nochmal in meinem opensaga-core Projekt und unter http://opensaga.org/maven/index.html#view-repositories;thirdparty nachgesehen, und beide jars enthalten sowohl die org.yuizilla.javascript Pakete, wie auch die hier fehlende org.yuizilla.javascript.ErrorReporter.

Ich verstehe nicht ganz, woher die andere Version kommt?

Ist die dependency im Projekt wie oben angegeben?

Hast Du mal probiert, das aus deinem lokalen Repository zu löschen, damit es neu runtergeladen wird?

matrose
04.05.2011, 02:29 PM
(o_o)

Es lag wirklich an dem classifier.
Habe den wohl übersehen gehabt.
Jetzt läd er das ganze auch wunderpar aus dem os-repository.

Vielen Dank.