maven里面可以用archetype:create-from-project生成项目骨架,但是包名往往有点问题。
create-from-project命令会去寻找一个包含所有文件的目录路径作为基础包。
比如如下的项目骨架:
src/main/java/
com.company.proid.dao
com.company.proid.service
com.company.proid.web
这样的话,利用create-from-project命令,默认的基础包就会是com.company.proid
比如在com.company.proid.dao包下有一个文件为 baseDao.java,那么生成模板以后,包就会是
package ${package}; 也就是说所有的 ${package} = com.company.proid.
也就是生成的模板里面,src/main/java/ 下直接是一个dao文件夹,一个service文件夹,一个web文件夹。
这样在不需要分业务包的时候没问题,但是如果你的项目骨架是这样的话:
src/main/java/
com.company.proid.moduels.sys
com.company.proid.moduels.sys.dao
com.company.proid.moduels.sys.service
com.company.proid.moduels.sys.web
也就是说model.sys包内是你已经写好的一个完整的功能包,你想放到骨架里面,这个时候直接用archetype:create-from-project命令的话,默认的基础包会变成com.company.proid.moduels.sys。
也就是在模板内, src/main/java下面moduels和sys文件夹就没了。
生成的模板包头如下:
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
package ${package}.dao;
src/main/java/ 下还是一个dao文件夹,一个service文件夹,一个web文件夹。
这样的话,事实上我们可能要生成的实际项目路径如下:
src/main/java/
com.company.proid.moduels.user
com.company.proid.moduels.user.dao
com.company.proid.moduels.user.service
com.company.proid.moduels.user.web
com.company.proid.moduels.sys
com.company.proid.moduels.sys.dao
com.company.proid.moduels.sys.service
com.company.proid.moduels.sys.web
当然在实际使用的时候,应该也没什么关系,大不了再建包,把moduels和sys建出来再重新弄一下也就是了,不过总是不是很完美。
所以需要告诉create-from-project 命令项目的基础包是什么。
用packageName即可:
archetype:create-from-project -DpackageName=com.company.proid
告诉它,我们需要保留moduels和sys文件夹。
这样执行命令以后,生成的模板即为:
src/main/java/modules/sys
和dao,service.web文件夹
生成的文件包头如下:
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
package ${package}.modules.sys.dao;
分享到:
相关推荐
2. 打包成Archetype:使用`mvn archetype:create-from-project`命令,将模板项目转换为Archetype。 3. 发布Archetype:将生成的Archetype发布到私有或公共仓库,以便其他开发者使用。 五、实际应用 在实际工作中,...
对于自定义Archetype,你需要编写自己的`pom.xml`和`archetype-resources`目录结构,然后使用`mvn archetype:create-from-project`命令将当前项目打包成一个新的Archetype。 总的来说,`archetype-catalog.xml`是...
- 使用`mvn archetype:create-from-project`命令可以从现有项目创建一个Archetype,然后可以对其进行定制和发布到本地或远程仓库。 - 在`archetype-metadata.xml`文件中定义变量,这些变量在生成项目时会提示用户...
4. **打包Archetype**:使用`mvn archetype:create-from-project`命令将你的archetype项目打包成一个jar文件,这个jar就是你的自定义archetype。 5. **发布Archetype**:将生成的jar文件上传到你的Maven仓库,这样...
原型模板是 maven 项目,可用于通过使用maven-archetype-plugin的create-from-project目标来派生原型。 所以这是一个maven项目,生成maven原型,以后可以用来生成更多的maven项目。总目录javafx8-archetype JavaFX ...
mvn archetype:create-from-project ``` 这将在`target/generated-sources/archetype`目录下生成模板文件。 5. **安装模板到本地仓库** 执行`mvn install`命令,将模板安装到本地Maven仓库中: ``` mvn ...
Sprint Boot子+四郎+东方+离子 库: Sprint Boot OrientDB(通过Spring Data进行远程对象持久化) Apache Shiro(基于OrientDB的授权领域的会话管理) ...mvn archetype:create-from-project 将原型安装到本地存储
Maven,一个强大的Java项目管理工具,能够帮助开发者管理项目的构建、依赖和配置,同时也提供了生成项目模板的功能,极大地提高了开发效率。 在Maven中,`create-from-project`命令是一个实用工具,它允许我们将...
jersey-guice-bootstrap 带有 Jersey 1.18.1 和 Google Guice 3.0 的 RESTful Web 服务应用程序示例项目 ...生成原型: mvn archetype:create-from-project 转到target/generated-sources/archetype并运
jersey-guice-bootstrap 带有 Jersey 1.18.1 和 Google Guice 3.0 的 RESTful Web 服务应用程序示例项目 ...生成原型: mvn archetype:create-from-project 转到target/generated-sources/archetype并运
3. **使用 Archetype 模板生成项目:** 使用已安装的模板来生成新的 Maven 项目: ```shell mvn archetype:generate -DarchetypeCatalog=local ``` `-DarchetypeCatalog=local` 表示从本地仓库加载模板。执行该...
这通常涉及编写一个基础项目,然后使用`mvn archetype:create-from-project`命令将其转换为Archetype。这个Archetype将包含你想要在新项目中重复使用的结构和配置。 2. **编辑archetype-catalog.xml**: 接下来,你...
6. **命令行使用**:执行Maven逆向工程通常需要在命令行中使用特定的命令,例如`mvn archetype:create-from-project`。这个命令会根据当前项目生成一个archetype,从而可以创建与之类似的全新项目。 7. **集成开发...
1. **初始化父模块**:使用`mvn archetype:create-from-project`命令或者在IDEA等集成环境中,从现有项目创建父模块。在pom.xml中,设置`<packaging>`为`pom`,并添加子模块的`<modules>`标签,例如: ```xml ...
3. 勾选“Create from archetype”,然后选择“webapp”模板以创建Web项目。 4. 输入项目信息,如GroupId、ArtifactId、Version等,并点击“Next”。 5. 指定Maven的安装路径和settings.xml文件位置,以及本地仓库的...
1. **选择插件骨架**:使用`mvn archetype:create-from-project`命令生成插件骨架。 2. **编写插件代码**:实现插件的目标函数和逻辑。 3. **打包和部署**:使用Maven打包插件,如`mvn clean install`,将插件部署到...
- 在创建项目界面中,选择Java -> Maven -> Create from Archetype,然后选择`maven-archetype-webapp`。 - 填写项目的基本信息,包括Group Id、Artifact Id等,并点击“Next”直至完成。 - 修改Project Name为`...
2. 选择“Create from archetype”,然后选择“maven-archetype-webapp”作为项目模板。 ##### 3.3 配置项目基本信息 1. **配置GroupId和ArtifactId**: - GroupId:通常表示公司的域名倒序(例如com.example)。...