Eclipse: Aktivieren Sie Assertions


96

Ich verwende Eclipse Galileo. Wie aktiviere ich Zusicherungen in Eclipse?

Wie von anderen Websites vorgeschlagen, habe ich versucht, die folgenden Argumente hinzuzufügen : -ea. Ich habe auch versucht, die Compiler-Konformitätsstufe auf zu ändern 1.4. Keiner dieser Vorschläge hat funktioniert.

Antworten:


163
  1. Gehen Sie zum Menü Run und dann zum Menüpunkt Run Configurations .

Geben Sie hier die Bildbeschreibung ein

  1. Gehen Sie im linken Bereich zu Java Applicationund dann zu Assertions.

  2. Im rechten Fensterbereich , wählen Sie die Registerkarte Arguments .

  3. Geben Sie unter dem Feld für VM argumentsFolgendes ein -ea, um Zusicherungen zu aktivieren.

Geben Sie hier die Bildbeschreibung ein

  1. Klicken Sie auf die SchaltflächeApply und dann .Run

So legen Sie es global als Standard für alles fest :

  1. Gehen Sie zum Menü Window(wenn Sie unter Windows arbeiten) oder zum Menü Eclipse(wenn Sie unter Mac arbeiten). Für Linux könnte es ähnlich sein.

  2. Gehe zu Preferences.

  3. Wählen Sie Javaund dann Installed JREsim linken Bereich .

  4. Wählen Sie Ihre JRE aus und klicken Sie dann auf die Edit...Schaltfläche im rechten Bereich .

  5. Fügen Sie im Default VM argumentsFeld hinzu -ea.


Dies funktioniert nicht für Android, Sie benötigen anscheinend JUnit Assert.
Noumenon

42
Um es global als Standard für alles festzulegen, gehen Sie zu Fenster -> Einstellungen -> Java / Installierte JREs. Wählen Sie die JRE aus und klicken Sie auf "Bearbeiten ...". Fügen Sie im Feld "Standard-VM-Argumente" "-ea" hinzu.
Silveri

@nbro Ich habe keinen AssertionsArtikel unter Java Application. Vielleicht meinten Sie die aktuelle Laufkonfiguration?
John McClane

@JohnMcClane Es ist möglich, dass verschiedene Versionen von Eclipse unterschiedliche Bedienfelder, Schaltflächen und Menüs haben. Wenn ich diese Anweisung speziell hinzugefügt habe (aber es ist lange her), habe ich sie wahrscheinlich in meiner eigenen Version ausprobiert (wie Sie auch auf den Bildern sehen können, verwende ich einen Mac, daher ist dies möglich dass sich Eclipse-Versionen auf anderen Systemen geringfügig unterscheiden).
nbro

1
@ JohnMcClane Ja, ich denke du hast recht. Es ist möglich, dass dies Projektnamen waren. Anstatt zu "Assertions" zu gehen, sollten Sie zu Ihrem Projektnamen gehen (denke ich).
nbro

36

Wenn Sie dieses Problem global für alle JUnit - Tests dann gehen lösen wollen Preferences > Java > JUnitund klicken Sie oben auf das Kontrollkästchen für „ Hinzufügen‚ea‘zu VM Argumente , wenn neue JUnit Startkonfiguration zu schaffen Nun Eclipse“ wird nicht Sie Fehler für jeden neuen Test Sie will rennen. Für vorhandene Tests müssen Sie die Laufkonfigurationen in entfernen Run Configuration > JUnit.


5
Gibt es eine Möglichkeit, -ea zu allen vorhandenen JUnit-Startkonfigurationen hinzuzufügen ?
MXRO

Um zu vorhandenen Tests hinzugefügt zu werden, müssen Sie die Laufkonfigurationen unter Laufkonfiguration > JUnit
Honza

11

Um dies global für alle Java-Läufe durchzuführen, bearbeiten Sie die Eigenschaften der installierten JREs.

Beispiel: Windows -> Einstellungen -> Markieren Sie die Standard-JRE -> klicken Sie auf Bearbeiten ... -> Geben Sie im Eingabefeld Standard-VM-Argumente -ea ein -> klicken Sie auf die Schaltfläche Fertig stellen.

Dies funktionierte mit Eclipse Kepler SR2.


5

In Maven- Projekten können Sie die Hauptmethode mit auto-magic classpath ausführen, indem Sie:

bash> export MAVEN_OPTS="-ea" && mvn exec:java -Dexec.mainClass="com.your.class.with.main"
cmd> set MAVEN_OPTS="-ea" && mvn exec:java -Dexec.mainClass="com.your.class.with.main"

In Linux / Eclipse können Sie ein Terminalfenster mit Bash hinzufügen, um die Verwendung zu vereinfachen.


4

Sie möchten Zusicherungen für eine Anwendung aktivieren, die Sie über Eclipse ausführen? Normalerweise füge ich nur -ea zu den Befehlszeilenparametern im Profil "Ausführen als" hinzu.


1
Ja, so mache ich das normalerweise auch, wenn ich über die Befehlszeile laufe. Deshalb dachte ich, dass das Hinzufügen dieser VM-Argumente in den Einstellungen funktionieren würde. Danke für die Eingabe. In Bestätigungen war ich nicht verrückt nach dem Gedanken, dass es das tun sollte.
eigentlich am
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.