Maven je užitečný nástroj pro řízení projektů pro projekty Java. Pomáhá zvládat více projektů, lze se integrovat s různým softwarem IDE (Integrated Development Environment) a především zjednodušuje procesy sestavování. V tomto tutoriálu nainstalujeme maven na systém RHEL 8 / CentOS 8 Linux a abychom nástroj otestovali, vytvoříme a spustíme jednoduchý příklad aplikace.
V tomto tutoriálu se naučíte:
- Jak nainstalovat Maven
- Jak vytvořit základní projekt
- Jak vytvořit projekt pomocí Maven
- Jak otestovat vytvořenou aplikaci
Úspěšné sestavení s Maven na RHEL 8 / CentOS 8.
Požadavky na software a použité konvence
Kategorie | Požadavky, konvence nebo použitá verze softwaru |
---|---|
Systém | RHEL 8 / CentOS 8 |
Software | Apache Maven 3.5 |
Jiné | Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz. |
Konvence | # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel |
Jak nainstalovat maven na Redhat 8 krok za krokem
Maven je tak běžný, že je dostupný v základních repozitářích RHEL 8 / CentOS 8. Potřebujeme pouze povolit úložiště pro správu předplatného. Odtud je to pouze dnf
poroučet pryč. Pokud ve svém systému nemáte nainstalovanou Javu, instalační nástroj ji zavede jako závislost.
- K instalaci požadovaného softwaru používáme
dnf
:# dnf install maven -y
Pravděpodobně bude nainstalováno mnoho závislostí, protože maven je dobře vybaven nástroji. Toto je jediný krok, který musí být spuštěn s
root
privilegia. - Vytváříme adresář, který bude obsahovat naše projekty a adresář testovacího projektu v něm (testuser je neprivilegovaný uživatel operačního systému na laboratorním stroji):
$ mkdir -p /home/testuser/work/repository/what_time_is_it
A zadejte jej:
$ cd /home/testuser/work/repository/what_time_is_it
- Vytváříme základní
pom.xml
soubor, srdce mavenových metadat s následujícím obsahem:<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>org.linuxconfig</groupId> <artifactId>WhatTimeIsIt</artifactId> <version>1.0.0</version> </project>
- Přidáváme cestu ke zdrojovému kódu Java:
mkdir -p $ mkdir -p src/main/java/org/linuxconfig
- Vytváříme jednoduchou třídu Java, která bude tisknout čas poskytovaný operačním systémem. Soubor obsahující zdrojový kód bude
/home/testuser/work/repository/what_time_is_it/WhatTimeIsIt.java
s následujícím obsahem:package org.linuxconfig; import java.util.Date; public class WhatTimeIsIt { public static void main(String args[]) { System.out.println("Detected system time is: " + new Date(System.currentTimeMillis())); } }
- Jsme připraveni sestavit balíček:
$ mvn package
- Po úspěšném sestavení můžeme spustit naši ukázkovou aplikaci postavenou ve fungující instalaci maven. Všimněte si, že hlavní třída je uvedena na příkazovém řádku:
$ java -cp target/WhatTimeIsIt-1.0.0.jar org.linuxconfig.WhatTimeIsIt Detected system time is: Thu Jan 03 21:25:41 CET 2019