IntelliJ IDEA [Java IDE]

  • Hallo liebe Java Entwickler!
    Heute will ich eine neue IDE vorstellen, die weitaus besser als Eclipse ist und immer populärer wird.
    Sogar das neue Android Studio wird darauf basieren.
    Ganz klar, ich spreche von IntelliJ Idea.
    Aber was kann denn die IDE?
    Die Frage sollte eher lauten was die IDE nicht kann!
    Sie hilft beim programmieren, zeigt Vorschläge an, wie man den Code verbessern könnte usw


    Hier mal ein Beispiel:

    Wie man da erkennt, kann nicht auf CheckMessageTask Zugegriffen werden, weil diese nicht public ist.



    Das Programm empfiehlt automatisch eine Lösung:

    Und stellt mit einem Klick es auf public.



    Ein anderes Beispiel:
    Die IDE hat erkannt das der Code einfacher sein kann:
    (Bei der Methode Foo())


    Die IDE zeigt im Hilfe-Menü "Simplify" an:


    Und durch einen Klick darauf wird der Code vereinfacht:


    Natürlich sind auch komplexere Sachen möglich, aber ich wollte nur ein paar einfache Beispiele zeigen.


    Download: http://www.jetbrains.com/idea/download/ (Community Edition herunterladen, die ist kostenlos und hat fast alle Features)


    Man kann übrigens Eclipse Projekte importieren :smiling_face:


    LG Trojaner

  • Es ist nicht so performant oder ?


    Ich hab bemerkt dass es meistens langsamer ist als z.B. eclipse :grinning_face_with_smiling_eyes:
    Mir ist klar dass es nicht an die Performance eines Texteditors dran kommt aber es ist halt doch relativ langsam :grinning_face_with_smiling_eyes:

  • Es synchronisiert bei mir die ganze Zeit die Dateien, auch wenn ich nichts ändere o.Ó Kann ich das irgendwie abschalten ^^?

  • Bei mir unten Links in der Ecke ist ein kleiner sich fortwährend drehender Kreis, wenn ich mit der Maus draufzeige heißt es nur 'Synchronizing files' :grinning_face_with_smiling_eyes:


    Edit:
    Nach etwa 10 Minuten ist es dann auch weg :grinning_face_with_smiling_eyes:

    Einmal editiert, zuletzt von _ShadowRaven_ ()

  • Hallo Trojaner,
    Ich kenne mich schon gut mit eclipse und Plugins aus, und wollte jetzt auf IntelliJ umsteigen, allerdings weis ich nicht wie ichie Main Class in der plugin.yml angebe. Da wenn ich es genauso mache wie bei eclipse kommt ein Fehler, das er die Valses nicht finden konnte. Kannst du mir bitte helfen?
    Danke
    Volleynic

    Einmal editiert, zuletzt von Volleynic ()

  • Das hilft dir mit deiner Plugin.yml: http://wiki.bukkit.org/Plugin_YAML
    Um die Bukkt-jar in IntelliJ Idea einzufügen musst du unter File auf Project Settings. Unter Library kannst du dann die API hinzufügen. Dazu musst du einfach auf das grüne + klicken und den Pfad zur Bukkit.jar angeben.

  • Nimm statt:
    /command
    lieber:
    /<command>


    Welches package ist den in der main.java definiert. Ich kann nicht sehen dass da irgendwas... falsch ist !

  • Nein, das muss man nicht machen habe es auch ausprobiert, geht immer noch nciht,


    das ist nur dafür gedacht um im Server log eine Nachricht anzeigen zu lassen.


    Z.B: bei eclipse braucht man es auch nicht.


    Trotzdem danke

  • Wenn man etwas vorbereiten muss (bspw. das Laden einer Konfigurationsdatei/Lokalisationsdatei/So ein Stuff halt) dann kann man onEnable() benutzen, oder eben onDisable() zum Speichern von Konfigurationen etc. aber grundsätzlich braucht man sie nicht.
    Die Exception wird auch schon weitaus früher ausgelöst, und zwar beim Lesen der plugin.yml.
    Wenn ich das so mit eclipse exportiere klappt es.
    Aber wenn ich es mit IntelliJ exportiere, klappt es auch, was heißt dass bei dir irgendwas im Projekt nicht stimmt.
    Anhand der Bilder kann ich leider nicht sagen, was es ist :grinning_face_with_smiling_eyes:

  • Versuch es doch einfach mal mit einer Main Class zu machen und für jeden Command dann eine einzelne Classe^^
    So mach ich es immer und es funzt :face_with_tongue:
    Die Main

    Code
    package lu.Scary_Block.Test;import org.bukkit.plugin.java.JavaPlugin;public class main extends JavaPlugin {	public void onEnable() {		this.getCommand("test").setExecutor(new testcommand());	}}

    und der Command


    Ist glaub ich noch immer nicht genau das was du wolltest, aber funzt :face_with_tongue:


    lG Scary =D

  • Du Nase, du !
    Das ganze Plugin hat nur einen Command :face_with_tongue:


    Außerdem hat die Kompilation bei mir funktioniert, und ich habe eigentlich nichts geändert.
    Versuch mal diese hier:

    Code
    name: MineSafe
    version: 1.0.0
    main: com.volleynic.plugin.MineSafe.main