C'est la procédure pour les débutants en Java pour créer un programme avec Intellij, le conditionner et créer quelque chose qui fonctionne pour le moment.
Cette fois, nous allons créer un programme qui n'acquiert que le contenu du titre sur la première page de Keta. Plutôt que d'étudier Java, cela ressemble plus à un tutoriel pour comprendre le flux de développement Java.
Veuillez télécharger et installer jdk et Intellij à partir du lien ci-dessus.
Après avoir lancé Intellij, cliquez sur Créer un nouveau projet
Sélectionnez «Maven» et cliquez sur «Suivant»
Entrez les valeurs suivantes et cliquez sur «Suivant»
article | valeur |
---|---|
GroupId | jp.sample |
ArtifactId | sample-artifact |
Version | Défaut |
Entrez le nom du projet et l'emplacement où vous souhaitez placer le fichier de projet et cliquez sur Terminer
Si l'écran suivant s'affiche, il est réussi.
Dossier de gestion de projet. Est-ce quelque chose comme un Gemfile dans Rails?
Créez avec le contenu suivant.
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>jp.sample</groupId>
<artifactId>sample-artifact</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.10.2</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>RELEASE</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<finalName>sample-${project.version}</finalName>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>jp.sample.Main</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Après avoir ajouté à pom.xml, Si vous voyez «Les projets Maven doivent être importés» en bas à droite, cliquez sur «Activer l'importation automatique»
dependencies Paramètres de bibliothèque dépendants. Cette fois, nous utiliserons les bibliothèques suivantes.
Nom de la bibliothèque | Utilisation |
---|---|
Jsoup | Pour gratter |
junit | pour le test |
properties Décrit pour éviter les erreurs suivantes lors de la construction.
[ERROR] Source option 1.5 is no longer supported. Use 1.6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.
maven-assembly-plugin Un plug-in pour créer un package qui inclut toutes les dépendances. Spécifiez Main-Class dans archive-> manifest. Cela élimine le besoin de Manifest.MF.
<archive>
<manifest>
<mainClass>jp.sample.Main</mainClass>
</manifest>
</archive>
Créez un programme pour gratter.
Tout d'abord, créez une classe Java.
Créez une classe nommée Main
.
Une fois créé, écrivez ce qui suit dans Main.java.
Main.java
package jp.sample;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
final ScrapeService scrapeService = new ScrapeService();
System.out.println(scrapeService.getTitle());
}
}
Créez ScrapeService.java de la même manière. C'est un programme pour obtenir le titre de Keta.
ScrapeService.java
package jp.sample;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
import java.io.IOException;
public class ScrapeService {
private String url = "https://qiita.com/";
public String getTitle() throws IOException {
Document document = Jsoup.connect(url).get();
Elements title = document.select("title");
return title.text();
}
}
Ouvrez Main.java, cliquez sur le bouton de lecture à gauche de public class Main {
, et cliquez sur Run'Main.main () '
pour exécuter le programme.
Ensuite, le résultat suivant sera affiché dans le débogueur ci-dessous. Si le titre de Keta est affiché, il réussit.
Ensuite, écrivez le code de test.
Ouvrez ScrapeService.java, avec le curseur sur le nom de classe ScrapeService
, et appuyez sur ʻAlt + ʻEnter
.
Ensuite, comme le montre l'image ci-dessous, l'option «Créer un test» s'affiche. Cliquez dessus.
Cette fois, j'utiliserai JUnit4. Si vous voyez un bouton appelé «FIX», cliquez dessus.
Il existe une liste de méthodes testables sous Générer des méthodes de test pour:
, vérifiez-les et cliquez sur OK.
Ensuite, le fichier de code de test est créé comme indiqué ci-dessous.
Modifiez-le ensuite comme suit.
LoginServiceTest.java
package jp.sample;
import org.junit.Test;
import java.io.IOException;
import static org.junit.Assert.assertEquals;
public class ScrapeServiceTest {
@Test
public void getTitle() throws IOException {
final ScrapeService scrapeService = new ScrapeService();
assertEquals("Qiita - A technical knowledge sharing platform for programmers.", scrapeService.getTitle());
}
}
Cliquez sur le bouton de lecture à gauche de public class LoginServiceTest {ʻet cliquez
Run'Main.main () '` pour lancer le test.
S'il est affiché dans le débogueur comme indiqué ci-dessous, le test réussit.
build Construire et empaqueter. À partir de là, vous travaillerez à partir de la ligne de commande, et non d'Intellij.
Accédez au répertoire sampleartifact / où se trouve pom.xml et exécutez la commande suivante:
$ mvn package
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running jp.sample.ScrapeServiceTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.786 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ sample-artifact ---
[INFO] Building jar: /Users/username/IdeaProjects/sampleartifact/target/sample-artifact-1.0-SNAPSHOT.jar
[INFO]
[INFO] --- maven-assembly-plugin:3.1.0:single (make-assembly) @ sample-artifact ---
[INFO] Building jar: /Users/username/IdeaProjects/sampleartifact/target/sample-1.0-SNAPSHOT-jar-with-dependencies.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.910 s
[INFO] Finished at: 2017-12-28T18:10:59+09:00
[INFO] Final Memory: 20M/67M
[INFO] ------------------------------------------------------------------------
Un fichier jar appelé sample-1.0-SNAPSHOT-jar-with-dependencies.jar
a été généré dans sampleartifact / target, alors essayez de l'exécuter.
$ java -jar sample-1.0-SNAPSHOT-jar-with-dependencies.jar
Qiita - A technical knowledge sharing platform for programmers.
Si le titre de Keta s'affiche ainsi, c'est réussi!
mvn install
mvn install
générera un fichier non seulement sous target
, mais aussi dans le référentiel local sous~ / .m2 /
.
$ mvn install
$ ls -1 -a ~/.m2/repository/jp/sample/sample-artifact/1.0-SNAPSHOT/
.
..
_remote.repositories
maven-metadata-local.xml
sample-artifact-1.0-SNAPSHOT-jar-with-dependencies.jar
sample-artifact-1.0-SNAPSHOT.jar
sample-artifact-1.0-SNAPSHOT.pom
Vous pouvez le supprimer avec la commande suivante. Il est utilisé pour vider la cible puis la reconstruire.
$ mvn clean