Frage

.

ich ein Dienstprogramm-Modul für GWT haben, die keine UI (daher hat, gibt es keine Klasse, die von com.google.gwt.core.client.EntryPoint erbt Wenn ich versuche, dieses Modul zu kompilieren mit GWT 1.7.1, bekomme ich diesen Fehler:

[ERROR] Module has no entry points defined

Wie kann ich diesen Fehler beheben? Muss ich wirklich einen Dummy Einstiegspunkt definieren? Wie hat Google immer ihren eigenen Nutzen Module zusammenstellen ???

War es hilfreich?

Lösung 3

Ich bin mit der gwt-maven-plugin Maven2 Plugin meines Code zu kompilieren. Ich wanderte den Code aus einer alten Version des maven-googlewebtoolkit2-plugin Plugin. Für die alte Plugin, musste ich, welche Module waren Einstiegspunkte wie so angeben:

                <compileTargets>
                    <param>com.project.module.Module</param>
                </compileTargets>

Für das neue Plugin, es ist

                <module>com.project.module.Module</module>

Da das Plugin nicht finden konnten, die kompilieren Module zu, sie suchen nach „* .gwt.xml“ und alle von ihnen in „UI-Module“ zusammengestellt (die einen Einstiegspunkt haben muss).

Andere Tipps

Utility-Gläser müssen nicht von GWT kompiliert werden.

Wenn Sie gerade dies als Bibliothek in anderen GWT-Anwendungen wiederverwendet werden sollen, dann müssen Sie nur noch die .class- jar und .java-Dateien in einem Gefäße und stellen Sie sicher, dass Sie eine .gwt.xml haben, der sagt, wo die Client Quelle ist. Wenn Sie die Konventionen (Client-Klassen in Client) folgen, dann können Sie mit nur sonst wegkommen müssen Sie einen Tag für das Client-Paket angeben

Dann stellen Sie sicher, dass Sie diese .gwt.xml in den Projekten erben, wo Sie einen Einstiegspunkt kompilieren wollen.

Nein Sie keine Entrypoint benötigen. Hier ist ein Beispiel von einem meiner Module, die nicht über eine einzige:

<?xml version="1.0" encoding="UTF-8"?>
<module>
    <source path="grid" />
    <inherits name="com.google.gwt.user.User"/>
</module>

Die kurze Antwort ist, dass Sie keinen Code in Modulen zusammenstellen. GWT braucht sie nur als Quellcode. Wenn Sie Ihren Hauptmodul (die mit dem Eintrittspunkt) kompilieren sie die Quelle von allen anderen Modulen verwendet, die Sie in Ihrer .gwt.xml Datei geerbt haben, das gesamte Projekt zu kompilieren.

Wir haben ein Versorgungsmodul bekommen, das konstruiert und behandelt einige gemeinsamen UI-Elemente, und eine Reihe von JavaScript / json gemeinsamen Aufgaben.

Es sieht aus wie das, was wir haben (auch aus dem totsp Plugin zum Codehaus gewandert irgendwo entlang der Strecke Plugin) war ein Einstiegspunkt in dem util-Modul aufzunehmen; es war einfach leer. (Es enthält den Kommentar "Intentional no-op").

Dann wird der pom bezieht sich nur auf die Sache als Abhängigkeit.

Bei Verwendung von Eclipse GWT-Plugin entfernen Sie einfach das Modul ohne Entrypoint aus dem moduleslist, die gerade erscheint vor dem Kompilieren.

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