面向JVM的应用程序的项目结构
对于Maven所用的项目结构,称为Maven标准的目录结构,不包含git
一.一个典型的源代码结构:
/ [project-name]
README.txt
LICENSE.txt
pom.xml
/src
/mian
/java Java source code for your project
/scala If you use other languages,they go at the same level
/resources Resources for your project
/filters Resource filter files
/assembly Assembly descriptors
/config Configuration files
/webapp Web application resources
/test
/java Test sources
/resources Test resources
/filters Test resource filters
/site Source for you project website
/doc Any other documentation
/lib
/runtime Libraries your project needs at run time
/test Libraries required to run tests
/build Libraries required to build your project
如果使用Maven子项目的话,应该知道每个子项目都在项目根目录的一个目录中,子项目也遵循Maven标准的目录结构
二.源代码管理
1.遵循Java语言的命名习惯,关于命名习惯,参见Sun文档,不过中文版http://www.blogjava.net/i369/articles/114305.html
2.生成的任何配置或则元数据不应该放在src目录中,而是应该放在target目录中,可以通过运行全量构建(clean build)时,它们可以被删除
三.测试管理
1.将所有要测试的源代码都放在test/[language]目录中,单元测试应该放在与包名相对应的目录中
四.构建输出管理
1.使用Maven做构建时.它把所有的东西都放在项目根目录中一个叫做target的文件夹中,包括生成的代码,元数据文件(如Hibernate映射文件),不可以把目录中的东西提交到版本控制库中
2.Maven在这个目录中如下创建文件:
/ [project-name]
/target
/classes Compiled classes
/test-classes Compiled test classes
/surefire-reports Test reports
如果你没有用Maven,可以在target目录下用一个名为reports的目录来保存测试报告,构建系统最终应该生成JAR,WAR和EAR这种形式的二进制包
五.库文件管理
1.完全交给工具管理,比如Maven,这时就不需要将库文件提交到版本控制系统中,只需要声明一下项目中所一来的库文件就好
2.库文件(包括构建,测试和运行时必需的所有库文件)都提交到版本控制库中,最常见的做法是将它们放在项目根目录下的lib文件夹中
3.我认为依赖库的不断演进,一种比较好的做法是建立组织的第三方依赖库,将所有项目需要的所有依赖库文件都放进去,Mavan可以自定义的
面向JVM的应用程序的项目结构的更多相关文章
- 一步步构建.NET Core Web应用程序---基本项目结构
前言 随着.NET Core日益成熟, 我作为C#&.NET体系中的一份子也加入了.NET Core 这一体系中,随着不断学习, 接触到的各种框架日益庞杂,接下来我会由一个新手的角度把整个基于 ...
- 微信小程序学习二 微信小程序的项目结构
进来之后可以看到五个文件和两个文件夹,一般新建的小程序项目都是这种格式,但有些可能会不一样,不用担心,因为我们所要关注的文件是不会变的 pages 小程序的页面放置文件夹,每一个页面(page)包含四 ...
- net core体系-web应用程序-3项目结构、配置文件详解
一.应用程序文件结构 如下图所示,相比于Asp.Net项目,在新建的Asp.Net Core项目中,没有了Global.asax以及Web.config这样的文件,但多了几个其他主要的文件,它们分别为 ...
- .NET CLI简单教程和项目结构
WHAT IS .NET CLI ? .NET 命令行接口 (CLI) 工具是用于开发.生成.运行和发布 .NET 应用程序的跨平台工具链. 来源:.NET CLI | Microsoft Docs ...
- MVC 5 第二章 项目结构
通过本章学习,你将了解到一个MVC 5应用程序的项目组成以及项目文件的相关信息,从而更好地架构设计出自己的项目结构. 单从MVC的字面意思我们便能够注意到M-模型, View-视图, Controll ...
- 微信小程序开发01 --- 微信小程序项目结构介绍
一.微信小程序简单介绍: 微信官方介绍微信小程序是一个不需要下载安装就可使用(呵呵,JS代码不用下载吗?展示的UI不用下载吗?)的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用. ...
- Android应用程序项目结构
Android应用程序项目结构 [src]:JAVA源代码目录 [gen]:由系统自动生成的JAVA源码文件,不可修改,只可查看和使用 加载的和依赖的类库 [assets]:本地存储文件的一个文件夹 ...
- Python封装应用程序的最佳项目结构是什么?
Python封装应用程序的最佳项目结构是什么? 转载来源于stackoverflow:https://stackoverflow.com/questions/193161/what-is-the-be ...
- Android程序项目结构(二)
利用Android Studio创建完第一个Hello World项目后,我们会看到使用project模式的项目结构. 一..gradle和.idea 这两个目录放置的是Android Studio自 ...
随机推荐
- Codeforces - 1198C - Matching vs Independent Set - 贪心
https://codeforces.com/contest/1198/problem/C 要选取一个大小大于等于n的匹配或者选取一个大小大于等于n的独立集. 考虑不断加入匹配集,最终加入了x条边. ...
- Cocos2d-x的Android配置以及相关參考文档
版权声明:版权声明:本文为博主原创文章.转载请附上博文链接! https://blog.csdn.net/ccf19881030/article/details/24141181 关于Win7 ...
- Viewer.js – 强大的JS/jQuery图片查看器
简介 Viewer.js 是一款强大的图片查看器,像门户网站一般都会有各自的图片查看器,如果您正需要一款强大的图片查看器,也许 Viewer.js 是一个很好的选择.Viewer.js 有以下特点: ...
- spark复习笔记(6):数据倾斜
一.数据倾斜 spark数据倾斜,map阶段对key进行重新划分.大量的数据在经过hash计算之后,进入到相同的分区中,zao
- 【推荐系统】知乎live入门
参考链接: 知乎推荐系统live:姚凯飞推荐系统live 目录 1.推荐概览与框架 2.细节补充 3.召回 4.排序 5.常用技能与日常工作 5.用户画像-特征工程 6.相关经验 7.推荐考试拿分路径 ...
- 时间选择器moment格式化存在时差问题
时间选择器moment格式化存在时差问题解决方法: return moment(date).utc().zone(+6).format('YYYY-MM-DD')解决IE9时间选择器不能回显数据解决方 ...
- 有用的2个 Windows 下批处理文件(bat文件):
创建多个文件夹(目录): 新建一个记事本:win + R –>输入notepad 在笔记本中输入如下: mkdir Would mkdir you mkdir marry mkdir me 另存 ...
- SwiftUI 里的 swift 闭包总结
创建 UI 时的闭包使用 在 SwiftUI 里闭包出现的频率特别高,这里我重新梳理了下闭包的定义. 关于闭包 闭包表达式语法的一般形式如下: {(parameters) -> return t ...
- java并发学习--第三章 线程安全问题
线程的安全问题一直是我们在开发过程中重要关注的地方,出现线程安全问题的必须满足两个条件:存在着两个或者两个以上的线程:多个线程共享着共同的一个资源, 而且操作资源的代码有多句.接下来我们来根据JDK自 ...
- SpringBoot application.proerties基本配置
#设置日志输出路径,日志文件名称,输出日志级别 默认日志文件超过10M会切分成多个文件 最新的日志文件就是设置的日志文件 logging.level.root=INFOlogging.level.or ...