Frage

Ich bin erstaunt, dass das Apache Commons-Sammlungen Das Projekt hat es immer noch nicht geschafft, seine Bibliothek generisch zu machen.Die von dieser Bibliothek bereitgestellten Funktionen gefallen mir wirklich gut, aber die fehlende Unterstützung für Generika ist ein großes Problem.Da ist ein Lavalabs-Zweig von Commons Collections, der Generika unterstützt, was scheinbar Abwärtskompatibilität beansprucht, aber als ich versuchte, auf diese Version zu aktualisieren, konnte meine Webanwendung (in JBoss) nicht gestartet werden.

Meine Fragen sind:

  • Ob jemand erfolgreich von Commons Collections auf den oben genannten Fork aktualisiert hat
  • Wenn Commons Collections Pläne hat, Unterstützung für Generika hinzuzufügen

Übrigens sind mir Google-Sammlungen bekannt, aber ich zögere, sie zu verwenden, bis sich die API stabilisiert hat.

Prost, Don

War es hilfreich?

Lösung

Es gibt Beiträge. Kasse der jira 's

Es gibt auch einen JDK5 Zweig .

Wir tun möchte Generika hinzuzufügen und zu aktualisieren Commons Collections 1.5 (und 1.6). Das größte Problem ist, wie die Kompatibilität zu adressieren rückwärts. Und die Menschen haben sehr unterschiedliche Meinungen gibt. Für einen Teil der Commons Komponenten der neuere JDK fragt fast für eine Rewrite für die neue JDKs IMHO.

Während ApacheCon spürte ich den Drang, über mehrere Menschen, obwohl diese in Bewegung zu bekommen. Es ist nur eine große Aufgabe.

Fühlen Sie sich frei zu zeigen, bis auf dev@commons.apache.org

prost, Torsten

Andere Tipps

Google Sammlungen . href="http://www.javalobby.org/articles/google-collections/" von ihren Javalobby Interview :

  

[Google Collections ist] mit Java 5 Merkmale: Generika, Aufzählungen, kovarianten Rückgabetypen usw. Beim Schreiben von Java 5-Code, können Sie eine Sammlung Bibliothek wollen, die alle Vorteile der Sprache nimmt. Darüber hinaus setzen wir enorme Anstrengungen in der Herstellung die Bibliothek komplett, robust, und im Einklang mit den JDK Collection-Klassen.

Da das letzte Wort in Jakarta eigenen internen Debatte war in Dec 07, ich würde sagen, dass Apache nicht Generika umarmen, das Feld für etwas offen zu lassen: java5 freundlich wie Google Sammlungen .

ich sage, den sauren Apfel beißen und Wechsel Google-Sammlungen, zumindest für neuen Code ein.

Ich weiß, dass Sie über die Stabilität besorgt sind, aber die Google-Sammlungen Bibliothek ist sehr nah an stabil Version 1.0 - auf der dev Liste rumhängen oder ihre gemeldeten Probleme sehen, sie sind schon sehr sehr vorsichtig über Änderungen, vor allem Brechen diejenigen. Unverträglichkeiten zwischen der aktuellen Version und der (scheinbar drohenden) 1.0 final werden extrem klein sein.

Auch, wenn Sie sich Sorgen um die Stabilität sind, wählen Sie eine Version (zum Beispiel die aktuelle, 1,0 RC4) und ... nur nicht aktualisieren. Sicher, Sie werden keine neuen Funktionen, aber commons-Sammlungen wurde in mehreren Jahre in sinnvoller Weise nicht aktualisiert , so sind Sie wirklich schlechter gestellt? Wenigstens sind Sie auf etwas mit Generika eingefroren und (IMHO) eine viel bessere API.

Das allgemeine BC Problem ist, dass Paket org.apache.commons.collections wurde umbenannt org.apache.commons.collections15. Ich weiß nicht, den Grund dieser Änderung. Versuchen Sie, benennen Sie es zurück, neu kompilieren, die Bibliothek und führen Sie Ihre Anwendung erneut.

Ich habe dieses Problem gefunden mit Clirr Tool auf commons-collections-3.2.1.jar (von Apache) und collections-generic-4.01.jar (von Lavalabs).

Ich kann mir nicht vorstellen, welchen Grund Sie dafür haben können, Google-Sammlungen nicht zu verwenden.Es ist ganz einfach, diese Bibliothek zu verwenden.

Für meine Arbeit verwende ich sowohl Apache Collections als auch Google Collections.

Können Sie näher erläutern, warum Sie Google Collections nicht verwenden können?

Grüße

Es gibt eine genericised Port of Commons Collections 3.1 verfügbar hier , die wir für ein paar verwendet haben, Jahren. Macht den Job gut, und da es auf der bestehenden Commons Quelle streng basierte, hat es eine stabile API.

Es könnte Aktualisierung verwenden, um Commons Collections 3.2, wenn auch zu entsprechen.

Haben Sie einen Read auf die Sammlung Blog, es das fertige Verständnis der Sammlung Rahmen. http://tech.konnectingtheworld.com/2010/09/ a-Note-on-java-Sammlungen /

Wenn Sie das Gefühl, dass Sie fragen nicht beantwortet wurde, mit mir in Kontakt treten. Ich werde versuchen, Ihnen die Informationen zur Verfügung zu stellen, so viel wie ich kann.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top