专业编程基础技术教程

网站首页 > 基础教程 正文

在命令中输入所有必要信息直接创建maven项目

ccvgpt 2024-10-10 05:06:05 基础教程 12 ℃

选择镜像

virhuiai/maven_quick:version-aliyun

有兴趣的可以看看这个镜像的制作过程

不进入容器直接生成

# 进入你想创建项目的父文件夹
cd /Volumes/RamDisk 
# 查看当前文件夹
pwd
# 生成项目
docker run -itd --rm --name maven_quick_tmp \
-v "$HOME/.m2/repository":/root/.m2/repository \
-v "$PWD":/usr/src/mymaven \
-w /usr/src/mymaven \
virhuiai/maven_quick:version-aliyun  \
mvn archetype:generate \
-DarchetypeArtifactId=maven-archetype-quickstart  \
-DinteractiveMode=false  \
-DarchetypeVersion=1.4 \
-DgroupId=com.virhuiai.www  \
-DartifactId=maven_quickstart_3 \
-DpackageName=com.virhuiai.www \
-DarchetypeVersion=RELEASE

如果不用docker,就是后面的部分:

在命令中输入所有必要信息直接创建maven项目

# 进入你想创建项目的父文件夹
cd /Volumes/RamDisk 
# 查看当前文件夹
pwd
# 生成项目
mvn archetype:generate \
-DarchetypeArtifactId=maven-archetype-quickstart  \
-DinteractiveMode=false  \
-DarchetypeVersion=1.4 \
-DgroupId=com.virhuiai.www  \
-DartifactId=maven_quickstart_3 \
-DpackageName=com.virhuiai.www \
-DarchetypeVersion=RELEASE

接下来介绍一下相关内容。

拉取镜像

docker pull virhuiai/maven_quick:version-aliyun


运行一个容器

选择目录

cd /Volumes/RamDisk
pwd
docker run -itd --rm --name maven_quick_tmp \
-v "$HOME/.m2/repository":/root/.m2/repository \
-v "$PWD":/usr/src/mymaven \
-w /usr/src/mymaven \
virhuiai/maven_quick:version-aliyun /bin/sh


运行一个容器时的命令介绍

下面咱说说这几个参数,有需要的可以看下,也可以直接看下一点。

--rm

说明是临时镜像

--name maven_quick_tmp

是镜像的名字

-itd

/bin/sh

配合,容器启动进入后台,后面用exec命令进入容器操作。

-v "$HOME/.m2/repository":/root/.m2/repository

这儿将本机的一个指定目录映射到容器中的/root/.m2/repository,这样下次运行时,相同的包就不用重复下载了,节约时间。

-v "$PWD":/usr/src/mymaven

-w /usr/src/mymaven

将当前目录$PWD映射为容器中的目录,并将容器的工作目录切到这个目录。

pwd
docker run -itd --rm --name maven_quick_tmp \
-v "$HOME/.m2/repository":/root/.m2/repository \
-v "$PWD":/usr/src/mymaven \
-w /usr/src/mymaven \
virhuiai/maven_quick:version-aliyun /bin/sh

进入容器运行generate生成项目

进入容器

docker exec -it maven_quick_tmp /bin/sh

运行生成命令

mvn archetype:generate


就选择7,org.apache.maven.archetypes:maven-archetype-quickstart,联网初始化一段时间后,会一步步提示输入groupId、artifactId、version、packageName等信息。

Define value for property 'groupId': com.virhuiai.www
Define value for property 'artifactId': maven_quickstart 
Define value for property 'version' 1.0-SNAPSHOT: : 
Define value for property 'package' com.virhuiai.www: : 
Confirm properties configuration:
groupId: com.virhuiai.www
artifactId: maven_quickstart
version: 1.0-SNAPSHOT
package: com.virhuiai.www
 Y: :


运行

查看下生成的项目结构

# cd maven_quickstart
# tree -N
.
├── pom.xml
└── src
    ├── main
    │   └── java
    │       └── com
    │           └── virhuiai
    │               └── www
    │                   └── App.java
    └── test
        └── java
            └── com
                └── virhuiai
                    └── www
                        └── AppTest.java
11 directories, 3 files


查看下pom.xml内容


编译

mvn compile


执行exec运行main方法

# 不需要传递参数:
mvn exec:java -Dexec.mainClass="com.virhuiai.www.App"


# 需要传递参数:
mvn exec:java -Dexec.mainClass="com.virhuiai.www.App" -Dexec.args="arg0 arg1 arg2"

test

mvn test

命令中输入所有必要信息直接创建项目

mvn archetype:generate \
-DarchetypeArtifactId=maven-archetype-quickstart  \
-DinteractiveMode=false  \
-DarchetypeVersion=1.4 \
-DgroupId=com.virhuiai.www  \
-DartifactId=maven_quickstart_2 \
-DpackageName=com.virhuiai.www \
-DarchetypeVersion=RELEASE

Tags:

最近发表
标签列表