Nun, die Entwicklung begann so.
Diesmal eine im LAN verwendete Textübertragungs- / Empfangsanwendung.
Ich würde gerne Design sagen ... aber ist es in Ordnung, diesmal nur den Anwendungsfall zu verwenden?
Kommunikation ist Socket-Kommunikation, und es gibt viele Beispiele. Es ist in Ordnung Irgendwie (positiv)
Dieses Mal ist die Sprache Java und die Kommunikation ist TCP / IP. Ich werde Eclipse Oxigen 4.7.3a als Umgebung verwenden. Derjenige, der es alleine gelassen hat, nachdem er es in den PC gesteckt hat. Der Referenzport ist ... nun, entscheiden wir uns, indem wir die Würfel entsprechend würfeln.
Ich dachte, aber es war mein erstes Mal, dass ich Kratzer für Java-Programme entwickelte. Nun, jede Sprache hat eine etwas andere Angewohnheit, und wenn Sie herausfinden, was zu tun ist, wird es funktionieren.
Als ich darüber nachdachte, fand ich sofort etwas zu untersuchen. Irgendwie "ist es beim Erstellen eines Java-Programms üblich, ein Projekt mit Maven zu erstellen". Eclipse ist auch enthalten, Sie. Maven, ich habe davon gehört, nicht wahr?
Deshalb habe ich schnell nachgeforscht
Referenz: Wikipedia-Maven
Maven scheint ein Projektmanagement-Tool für Java zu sein. Ich habe gehört, dass es sicherlich neben Red Mine als Projektmanagement-Tool benannt wurde. Ich wusste nicht, dass es der Nachfolger von Apache Ant ist. Ich meine, Ant ist nur das Bild, das ich für den Build verwendet habe.
Anscheinend ist das Bild nicht ganz anders, Build-Tool, Bibliotheksverwaltungstool, Java-Projektentwicklungsvorlage, Test-Tool usw. Es scheint ein integriertes Entwicklungsunterstützungs-Tool mit verschiedenen Funktionen zu sein. (Spezialisiert auf Java)
Persönlich mache ich mir wirklich Sorgen, dass es einfach ist, mit Jenkins zu arbeiten. Ich werde es später nachschlagen.
Jetzt, wo ich es ungefähr weiß, lassen Sie es uns jedes Mal überprüfen. Erstellen Sie zunächst ein neues Projekt mit Maven ...
Als ich darüber nachdachte, entschied ich mich für einen Archetyp. Mavens Archtyp ... Ist es wie eine Vorlage? Setzen Sie die Untersuchung fort, während Sie nachdenken.
Anscheinend ist die Idee selbst nicht falsch. Hoho. Welches soll ich diesmal wählen? (Edo Kind)
・ ・ ・
・ ・ ・
・ ・ ・ ・ ・ ・
Das? Ich kann keine Erklärung für Architype auf Japanisch finden.
Also habe ich es in Apache gesehen, dem Entwickler von Maven. Das Folgende ist eine japanische Übersetzung, die nach Humor riecht. Für diejenigen, die auf den Text verweisen möchten, hier (Englisch)
Group ID | Artifact ID | Erläuterung |
---|---|---|
org.apache.maven.archtypes | maven-archetype-archetype | Archetyp Erzeugt einen Beispielarchetyp |
org.apache.maven.archtypes | maven-archetype-j2ee-simple | Generieren Sie einen vereinfachten J2EE-Beispielarchetyp (Enterprise) |
org.apache.maven.archtypes | maven-archetype-mojo | Generieren Sie einen Archetyp für das Maven-Plug-In-Beispiel |
org.apache.maven.archtypes | maven-archetype-plugin | Generieren Sie einen Archetyp für den Maven-Plug |
org.apache.maven.archtypes | maven-archetype-plugin-site | Generieren Sie einen Archetyp für die Maven-Plug-In-Site |
org.apache.maven.archtypes | maven-archetype-portlet | JSR-Generieren Sie einen Archetyp für das 268-Standardportlet-Beispiel |
org.apache.maven.archtypes | maven-archetype-quickstart | Generieren Sie einen Archetyp für das Maven-Projektbeispiel |
org.apache.maven.archtypes | maven-archetype-simple | Generieren Sie einen einfachen Maven-Projektarchetyp |
org.apache.maven.archtypes | maven-archetype-site | Unterstützt Formate wie APT, XDoc, FML, i18n Ihrer Site(Mehrsprachig)Ich werde einen Archetyp generieren, der zeigt, wie es geht |
org.apache.maven.archtypes | maven-archetype-site-simple | Generieren Sie einen Archetyp für das Maven-Site-Beispiel |
org.apache.maven.archtypes | maven-archetype-webapp | Generieren Sie einen Archetyp für das Maven Web App-Beispiel |
HM. Ich habe das Gefühl, dass es viele Dinge für das Web gibt. Es scheint interessant zu sein, also werde ich in Zukunft darüber nachdenken, diesmal habe ich mich für maven-arche type-simple entschieden Als ich darüber nachdachte, war es ursprünglich nicht in Eclipse registriert. Es bleibt keine andere Wahl, als den Schnellstart zu wählen. Es ist eine Anwendung, die auf einem Computer ausgeführt wird. Der Server ist im Haus, also können Sie darüber nachdenken.
Also habe ich es geschafft Plötzlich liegt ein Fehler vor.
Project configuration is not up-to-date with pom.xml. Select: Maven->Update Project... from the project context menu or use Quick Fix.
Als ich es nachgeschlagen habe, stand dort: "Es wird herauskommen, wenn sich die Einstellungen usw. nicht widerspiegeln." Wo meinen Sie, wenn Sie sagen: "Wählen Sie: Maven-> Projekt aktualisieren ... aus dem Projektkontextmenü oder verwenden Sie die Schnellkorrektur."
Ist die Einstellung des gesamten Projekts die Wurzel des Projekts? Wenn ich das Kontextmenü öffne, sehe ich einen solchen Eintrag. Wählen Sie [Projektstammkontextmenü (Rechtsklick)] - [Maven] - [Projekt aktualisieren], um diesen Bildschirm anzuzeigen. (Da die Tastenkombination auf Alt + F5 eingestellt war, ist GO mit der Tastenkombination ungeduldig!)
Wenn Sie hier auf OK klicken, war das Update erfolgreich.
Die Warnung kommt nach \ Connichiwa / ohne Zeit zum Atmen. Irgendwie geht der Build-Pfad nicht vorbei.
Build path specifies execution environment J2SE-1.5. There are no JREs installed in the workspace that are strictly compatible with this environment.
Anscheinend ist das Problem, dass jre1.5 angegeben ist. Die Standardeinstellung für Maven ist jre1.5. Ich habe übrigens jre1.8 verwendet
[JRE-Systembibliothek-Kontextmenü (Rechtsklick)] - [Eigenschaften] - [Systembibliothek] Einstellungen Ich konnte die Warnung sicher entfernen, indem ich "Workspace default JRE (jre1.8.0_171)" einstellte.
Obwohl ich die Warnung deaktivieren konnte, wird sie im aktuellen Status erneut angezeigt, wenn ich ein Projektupdate schreiben kann. Das ist etwas unangenehm, deshalb habe ich beschlossen, andere Methoden zu untersuchen.
Der Punkt ist, dass Sie die Java-Version schreiben sollten, die in der Einstellungsdatei verwendet werden soll: pom.xml.
Nach der Untersuchung sollten die folgenden beiden Beschreibungen zusammen mit der JRE-Version zum Eigenschaftenelement von pom.xml hinzugefügt werden. Offiziell hier
Element | Erläuterung |
---|---|
maven.compiler.source | Der im Quellargument des Java-Compilers festgelegte Wert. Zeichenfolgentyp |
maven.compiler.target | Der im Zielargument des Java-Compilers festgelegte Wert. Zeichenfolgentyp |
Wahrscheinlich das Äquivalent zu den Optionen -source und -target von javac. (Ich dachte, dass Javac in der offiziellen Compiler-ID angegeben wurde.) Übrigens, obwohl es im offiziellen Wert des Artikels geschrieben ist, ist der Standard 1,5.
Deshalb das Änderungsverfahren
Doppelklicken Sie im Projektexplorer auf pom.xml, um OverView anzuzeigen.
Klicken Sie auf [Eigenschaften] - [Erstellen], um den Eingabedialog aufzurufen.
Legen Sie den Elementnamen (entsprechend maven.compiler.source) im Feld Name und den Wert im Feld Wert fest.
Bestätigen Sie, dass es reflektiert wurde.
Übrigens wurde Eclipse Oxigen 4.7.3a, das ich verwende, ohne automatische Vervollständigungsfunktion handgefertigt.
Doppelklicken Sie im Projektexplorer auf pom.xml, um OverView anzuzeigen.
Klicken Sie unten im Fenster auf die Registerkarte [pom.xml], um die Anzeige zu wechseln.
Suchen Sie den Eigenschaftenblock und fügen Sie die Elemente maven.compiler.source und maven.compiler.target hinzu.
Um ehrlich zu sein, halte ich es für in Ordnung, direkt im aktuellen Status neu zu schreiben.
Alles was Sie tun müssen, ist es zu schaffen! ・ ・ ・ Aber ich war neugierig, also habe ich ein wenig recherchiert. Ist es in Ordnung, main () als Einstiegspunkt für Java-Anwendungen zu verwenden? Wie richtet man neben main () eine Klasse ein?
Ich dachte, also habe ich eine zusätzliche Untersuchung durchgeführt.
Wenn Sie nachschlagen, besteht kein Zweifel daran, dass der Einstiegspunkt main () ist. Es gibt jedoch keine Beschreibung zum Angeben der Klasse.
Meistens ist dies in den Projekteigenschaften! Zeigen Sie die Eigenschaften des Projektstamms mit Atari an. Sie können den Einstellungsbildschirm der Anwendung öffnen, indem Sie auf [Run / Debug Setting] - [Edit] klicken.
Wenn Sie die [Bearbeiten] -Taste auf der rechten Seite des Bildschirms drücken ...
Gehen Sie zum Detaileinstellungsbildschirm.
Es scheint also, dass die Hauptklasse hier die Halteklasse des Einstiegspunkts angibt. Lassen Sie uns also eine andere Hauptmethode erstellen und experimentieren.
Für App, Ppa Da main () in der App Hello World war, habe ich die Nachricht geändert. Auf Wiedersehen ist einsam, also mach eine Pause.
Ändern Sie also die Einstellung der Angelegenheit und führen Sie sie aus
Ich konnte den Einstiegspunkt sicher ändern.
Ursprünglich hatte ich nicht erwartet, mehrere Hauptmethoden zu schreiben Abgesehen von den Einstellungen zum Ausführen / Debuggen und Bearbeiten bin ich gespannt, dass es eine Schaltfläche Neu und eine Schaltfläche Duplizieren gab. Wenn Sie darüber nachdenken, können Sie hier anscheinend mehrere Startbedingungen speichern, daher werde ich darauf verzichten.
Wo ist der Inhalt der Einstellung? Ich habe viel gesucht, aber ich konnte es nicht finden. Als ich dachte, gab es eine Beschreibung in hier. Anscheinend gibt es ein Manifest ähnlich wie bei Android.
Ich war wirklich neugierig und setzte die Untersuchung fort. META-INF / MANIFEST.MF ist in der JAR vorhanden, die die kompilierten .class-Dateien sammelt, und sollte dort im Main-Class-Element festgelegt werden. Referenz: Einführung in Java in Tohoho, * Element zum Erstellen einer JAR-Datei *
Wir planen, ab morgen mit der Produktion zu beginnen. Die heutige Arbeitszeit ist 05:15:44.
Recommended Posts