15/05/2022

Maven -1

yeni bir projeye başlarken maven ile önce

mvn archetype:generate

Bu bazı default dosyaları indirip local repositoryiö klasör yapısını ve pom.xml i oluştururacakç

ilk önce uzun bir listeden seçmemizi isteyecek ancak enter ile geçebiliriz.

......
3086: remote -> us.fatehi:schemacrawler-archetype-plugin-command (-)
3087: remote -> us.fatehi:schemacrawler-archetype-plugin-dbconnector (-)
3088: remote -> us.fatehi:schemacrawler-archetype-plugin-lint (-)
3089: remote -> ws.osiris:osiris-archetype (Maven Archetype for Osiris)
3090: remote -> xyz.luan.generator:xyz-gae-generator (-)
3091: remote -> xyz.luan.generator:xyz-generator (-)
3092: remote -> za.co.absa.hyperdrive:component-archetype (-)
3093: remote -> za.co.absa.hyperdrive:component-archetype_2.11 (-)
3094: remote -> za.co.absa.hyperdrive:component-archetype_2.12 (-)
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 1905:

Default olarak gelen archetype burada 1905 ve bu helloworld uygulamasının archetype ı. Her zaman 1905 olmak zorunda değil.

Enter

Sonra versiyon soracak. şimdilik 1.0 ı seçebiliriz.

Choose org.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
7: 1.3
8: 1.4
Choose a number: 8: 5

sonra group Id soracak

Define value for property 'groupId': de.buyukburc

groupid yazılımın genel grubunu gösteriyor. Genel yaklaşım şirketin domain adının tersten yazılmasıdır. “de.buyukburc” gibi.

sonra artifact Id. ArtifactId projenin adıdır.

Define value for property 'artifactId': GpaProject

Sonra gelen iki soruyu enter ile de geçebiliriz.

Define value for property 'version' 1.0-SNAPSHOT: :
Define value for property 'package' de.buyukburc: :

şimdi klasörümüz ve yapı oluşturuldu.

:/mnt/c/java-starter/GpaProject$ ls -R
.:
pom.xml  src

./src:
main  test

./src/main:
java

./src/main/java:
de

./src/main/java/de:
buyukburc

./src/main/java/de/buyukburc:
App.java

./src/test:
java

./src/test/java:
de

./src/test/java/de:
buyukburc

./src/test/java/de/buyukburc:
AppTest.java
/mnt/c/java-starter/GpaProject$

pom.xml de oluşturuldu. İçeriğe bakacak olursak

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>de.buyukburc</groupId>
  <artifactId>GpaProject</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>GpaProject</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

junit default olarak geldi.

Ayrıca bayı pluginler ‘~/.m2/repository’ klasşrğne konacak default olarak.

Leave a Reply