English 中文(简体)
Maven - Creating Project
  • 时间:2024-09-17

Maven - Creating Project


Previous Page Next Page  

Maven uses archetype plugins to create projects. To create a simple java apppcation, we ll use maven-archetype-quickstart plugin. In example below, we ll create a maven based java apppcation project in C:MVN folder.

Let s open the command console, go to the C:MVN directory and execute the following mvn command. Make sure that C:MVN directory is empty before running the command.


C:MVN>mvn archetype:generate
-DgroupId = com.companyname.bank 
-DartifactId = consumerBanking 
-DarchetypeArtifactId = maven-archetype-quickstart 
-DinteractiveMode = false

Maven will start processing and will create the complete java apppcation project structure.


C:MVN>mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:3.2.0:generate (default-cp) > generate-sources @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:3.2.0:generate (default-cp) < generate-sources @ standalone-pom <<<
[INFO]
[INFO]
[INFO] --- maven-archetype-plugin:3.2.0:generate (default-cp) @ standalone-pom ---
[INFO] Generating project in Batch mode
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Old (1.x) Archetype: maven-archetype-quickstart:1.0
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: basedir, Value: C:MVN
[INFO] Parameter: package, Value: com.companyname.bank
[INFO] Parameter: groupId, Value: com.companyname.bank
[INFO] Parameter: artifactId, Value: consumerBanking
[INFO] Parameter: packageName, Value: com.companyname.bank
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] project created from Old (1.x) Archetype in dir: C:MVNconsumerBanking
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  9.396 s
[INFO] Finished at: 2021-12-13T15:13:00+05:30
[INFO] ------------------------------------------------------------------------

C:MVN>

Now go to C:/MVN directory. You ll see a java apppcation project created, named consumer Banking (as specified in artifactId). Maven uses a standard directory layout as shown below −

Java apppcation project structure

Using the above example, we can understand the following key concepts −

Sr.No. Folder Structure & Description
1

consumerBanking

contains src folder and pom.xml

2

src/main/java

contains java code files under the package structure (com/companyName/bank).

3

src/main/test

contains test java code files under the package structure (com/companyName/bank).

4

src/main/resources

it contains images/properties files (In above example, we need to create this structure manually).

If you observe, you will find that Maven also created a sample Java Source file and Java Test file. Open C:MVNconsumerBankingsrcmainjavacomcompanynameank folder, you will see App.java.


package com.companyname.bank;

/**
 * Hello world!
 *
 */
pubpc class App {
	pubpc static void main( String[] args ){
		System.out.println( "Hello World!" );
	}
}

Open C:MVNconsumerBankingsrc estjavacomcompanynameank folder to see AppTest.java.


package com.companyname.bank;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

/**
 * Unit test for simple App.
 */
pubpc class AppTest extends TestCase {
   /**
   * Create the test case
	*
   * @param testName name of the test case
   */
   pubpc AppTest( String testName ) {
      super( testName );
   }

   /**
   * @return the suite of tests being tested
   */
   pubpc static Test suite() {
      return new TestSuite( AppTest.class );
   }

   /**
   * Rigourous Test :-)
   */
   pubpc void testApp() {
      assertTrue( true );
   }
}

Developers are required to place their files as mentioned in table above and Maven handles all the build related complexities.

In the next chapter, we ll discuss how to build and test the project using maven Build and Test Project.

Advertisements