• Maven创建Java项目


    Maven使用 archetype 来创建项目。要创建一个简单的 Java 应用程序,我们使用 maven-archetype-quickstart 插件。在下面的例子中,我们将创建一个基于Maven 的 Java 应用程序项目在 C:MVN 文件夹。

    让我们打开命令控制台,进入到 C:MVN 目录并执行以下命令 mvn 命令。

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

    Maven会开始处理,并建立完整的 Java应用程序项目结构。

    INFO] Scanning for projects...
    [INFO] Searching repository for plugin with prefix: 'archetype'.
    [INFO] -------------------------------------------------------------------
    [INFO] Building Maven Default Project
    [INFO]    task-segment: [archetype:generate] (aggregator-style)
    [INFO] -------------------------------------------------------------------
    [INFO] Preparing archetype:generate
    [INFO] No goals needed for project - skipping
    [INFO] [archetype:generate {execution: default-cli}]
    [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: groupId, Value: com.companyname.bank
    [INFO] Parameter: packageName, Value: com.companyname.bank
    [INFO] Parameter: package, Value: com.companyname.bank
    [INFO] Parameter: artifactId, Value: consumerBanking
    [INFO] Parameter: basedir, Value: C:MVN
    [INFO] Parameter: version, Value: 1.0-SNAPSHOT
    [INFO] project created from Old (1.x) Archetype in dir: C:MVNconsumerBanking
    [INFO] ------------------------------------------------------------------
    [INFO] BUILD SUCCESSFUL
    [INFO] ------------------------------------------------------------------
    [INFO] Total time: 14 seconds
    [INFO] Finished at: Tue Jul 10 15:38:58 IST 2012
    [INFO] Final Memory: 21M/124M
    [INFO] ------------------------------------------------------------------
    

    现在进入到 C:MVN 目录。将看到创建了一个 Java应用程序项目,并命名为 consumerBanking(如:artifactId 指定)。 Maven 使用的标准目录结构,如下图所示:

    Java application project structure

    用上面的例子中,我们可以了解到以下关键概念

    文件夹结构描述
    consumerBanking 包括 src 目录和 pom.xml
    src/main/java 包含封装结构下的 Java 代码的文件 (com/companyName/bank)
    src/main/test 包含封装结构下的文本Java 测试代码文件 (com/companyName/bank)
    src/main/resources 它包含图片/属性文件(在上面的例子中需要手动创建这个结构)

    Maven 还创建了一个示例 Java 源文件和 Java 测试文件。打开 C:MVNconsumerBankingsrcmainjavacomcompanynameank  文件夹,会看到 App.java 如下所示代码:

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

    打开 C:MVNconsumerBankingsrc estjavacomcompanynameank 文件夹,就会看到 AppTest.java 

    package com.companyname.bank;
    
    import junit.framework.Test;
    import junit.framework.TestCase;
    import junit.framework.TestSuite;
    
    /**
     * Unit test for simple App.
     */
    public class AppTest extends TestCase 
    {
        /**
         * Create the test case
         *
         * @param testName name of the test case
         */
        public AppTest( String testName )
        {
            super( testName );
        }
    
        /**
         * @return the suite of tests being tested
         */
        public static Test suite()
        {
            return new TestSuite( AppTest.class );
        }
    
        /**
         * Rigourous Test :-)
         */
        public void testApp()
        {
            assertTrue( true );
        }
    }

    开发人员需要创建如上表所述文件,Maven将处理所有构建。

    在下一节中,我们将讨论如何使用 Maven 来构建和测试项目:Maven构建和测试项目

  • 相关阅读:
    【PyTorch】PyTorch使用LMDB数据库加速文件读取
    【PyTorch】PyTorch中的梯度累加
    【数字图像处理】Bilateral Filters
    【PyTorch】计算局部相似矩阵
    【模型压缩】蒸馏算法小结
    【深度聚类】Superpixel Sampling Networks
    【PyTorch】训练器设置
    【语义分割】Dual Attention Network for Scene Segmentation
    【网络架构】Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting
    【任务指标】Matting任务里的Gradient与Connectivity指标
  • 原文地址:https://www.cnblogs.com/borter/p/9605489.html
Copyright © 2020-2023  润新知