==
基于Java开发平台开发业务系统,建议使用maven作为构建工具,以方便不同组件和依赖包的管理。客户现场开发的情况,访问Maven仓库确实困难的,可事先将依赖关系以Release的方式下载到一个集中的目录,然后使用Ant对工程进行构建。
程序目录结构应遵从maven默认约定,以统一规范,简化构建配置。一个典型的JavaEE应用(对应公司某产品、或某个项目的程序),目录结构如何的呢,我们一起来分析一下。
叙述
==
目录结构
目录 | 用途 |
src/main/java | Application /Library 的java源代码(再分package) |
src/main/resources | Application/Library 的资源文件,如多字符集boundle,位图,配置文件等(单独建立conf等子目录) |
src/main/resources/conf | 增加:准备封到JAR包中的配置文件(默认包下conf/目录) |
src/main/webapps | Web 应用的网页,WEB-INF目录等所在,详见本表下方说明 |
src/test/java | 单元测试的源代码 |
src/test/resources | 测试使用的资源文件,如集成测试脚本等 |
src/test/resources/conf | 增加:测试用例需要的配置文件 |
target | maven编译目录,包含中间过程文件和最终的工件(如jar) |
Bower.json | Bower是一个包管理工具,可以通过命令行直接下载需要的内容包及其依赖包到指定的目录 |
.iml | iml是 intellij idea的工程配置文件,里面是当前projec的一些配置信息 |
nb-configuration.xml | 源代码控制 |
nbactions.xml | 存储典型的运行应用程序的信息。即JVM参数等.可以定义自定义构建配置. |
pom.xml | Maven工程的配置文件,以此控制maven构建行为 |
LICENSE.txt | 产品/本工程的版权信息文件 |
README.txt | 产品/本工程的说明文件 |
详解bower.json文件
{
"name":"", //必须,如果需要注册包,则该包名唯一。
"description":"", //可选,包描述
"main":[], //可选,入口文件,bower本身不使用,供第三方构建工具会使用,每种文件类型只能有一个。
"ignore":[], //可选,文件或目录列表。bower安装的时候将忽略该列表中的文件。
//bower是从git仓库或压缩包下载一个包,里面的文件并不一定全部需要。
"dependencies":[], //依赖包,name:value,value可以是包的semver
//range(版本号范围),也可以直接是一个包的git地址或压缩包地址。
"devDependencies":[], //开发依赖包,仅仅在开发过程中测试或者编译文档用,部署生产环境是不需要。
//格式和dependencies 相同
"resolutions":[], //包引用冲突自动使用该模块指定的包版本
//格式和dependencies 相同
"moduleType":"", //可选,指定包采用那种模块化方式(globals,amd,node,es6,yui)
"private":Boolean, //是否公开发布当前包,如果只是使用bower来管理项目的包,设置为true.
"license":"", //授权方式(GPL-3.0,CC-BY-4.0.....)
"keywords":[], //可选,方便注册后容易被其他人搜索到。
"authors":[], //作者列表