像Maven一样构建java项目的目录,更好的管理java工程的源码
都知道maven具有管理Java或者Javaweb的功能。我个人尤其看中的是其代码层次的分离。不同的代码在不同的文件夹下。这是在eclipse新建一个普通的工程无法实现的。而如果用maven实现有时候显得有点没有必要,特别是平时练习写代码的时候。能不能手动把普通的Java项目的目录结构修改为类似maven管理的项目的目录结构。这是当然可以的。
Maven项目的目录结构:

从图中可以看出maven构建的Java web项目的目录很有层次感,src/main/java目录下存放的一般是项目的主要的代码;src/main/resource目录下存放的是一些项目相关的配置文件;src/test/java目录下一般存放的是一些测试的代码:比如通过测试框架编写的单元代码或者是一些简单的main函数。
好了下面来看看怎么把一个普通的Java项目的目录结构改得如同maven项目一样层次分明。
1、 新建一个java project 或者是一个java dynamic web工程。

2、 删除第一步新建的test项目下的src目录。
3、 右键项目 》 Properties ,搜索java build path,选择Java Build Path,》选择Source Tab页签,》点击 Add Folder..按钮。

4、 弹出Source Folder Selection框,点击Create New Folder ..按钮。 输入文件夹名即可(可以按路径输入,如src/main/java)。


5、 依次点击Finish,OK即可完成了目录的创建。
6、 最后的效果如图。

像Maven一样构建java项目的目录,更好的管理java工程的源码的更多相关文章
- Eclipse JAVA项目的 目录结构 和 导入
说明:本文所有测试以java工程为例: 1. Eclipse下的java工程目录 eclipse的基本工程目录叫做workspace,每个运行时的eclipse实例只能对应一个workspace,也就 ...
- Java开源生鲜电商平台-系统架构与技术选型(源码可下载)
Java开源生鲜电商平台-系统架构与技术选型(源码可下载) 1. 硬件环境 公司服务器 2. 软件环境 2.1 操作系统 Linux CentOS 6.8系列 2.2 反向代理/web服务器 ...
- java io系列12之 BufferedInputStream(缓冲输入流)的认知、源码和示例
本章内容包括3个部分:BufferedInputStream介绍,BufferedInputStream源码,以及BufferedInputStream使用示例. 转载请注明出处:http://www ...
- java io系列13之 BufferedOutputStream(缓冲输出流)的认知、源码和示例
本章内容包括3个部分:BufferedOutputStream介绍,BufferedOutputStream源码,以及BufferedOutputStream使用示例. 转载请注明出处:http:// ...
- Java生鲜电商平台-促销系统的架构设计与源码解析
Java生鲜电商平台-促销系统的架构设计与源码解析 说明:本文重点讲解现在流行的促销方案以及源码解析,让大家对促销,纳新有一个深入的了解与学习过程. 促销系统是电商系统另外一个比较大,也是比较复杂的系 ...
- java io系列15之 DataOutputStream(数据输出流)的认知、源码和示例
本章介绍DataOutputStream.我们先对DataOutputStream有个大致认识,然后再深入学习它的源码,最后通过示例加深对它的了解. 转载请注明出处:http://www.cnblog ...
- Java生鲜电商平台-优惠券系统的架构设计与源码解析
Java生鲜电商平台-优惠券系统的架构设计与源码解析 电商后台:实例解读促销系统 电商后台系统包括商品管理系统.采购系统.仓储系统.订单系统.促销系统.维权系统.财务系统.会员系统.权限系统等,各系统 ...
- (转)Java中的String为什么是不可变的? -- String源码分析
背景:被问到很基础的知识点 string 自己答的很模糊 Java中的String为什么是不可变的? -- String源码分析 ps:最好去阅读原文 Java中的String为什么是不可变的 什 ...
- Java中常用的七个阻塞队列第二篇DelayQueue源码介绍
Java中常用的七个阻塞队列第二篇DelayQueue源码介绍 通过前面两篇文章,我们对队列有了了解及已经认识了常用阻塞队列中的三个了.本篇我们继续介绍剩下的几个队列. 本文主要内容:通过源码学习De ...
随机推荐
- *HDU3367 最小生成树
Pseudoforest Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tot ...
- AngularJS Moudle 函数讲解
AngularJS中的Module类负责定义应用如何启动,它还可以通过声明的方式定义应用中的各个片段.我们来看看它是如何实现这些功能的. 一.Main方法在哪里 如果你是从Java或者Python编程 ...
- python字符串前面加r
在Python的string前面加上'r', 是为了告诉编译器这个string是个raw string,不要转意backslash '\' . 例如,\n 在raw string中,是两个字符,\和n ...
- Oracle EBS Setup
1. Prevent close other forms after close original form
- opencv的问题
opencv中图像文件格式是BRG的顺序 而QImage是RGB形式 H:色彩 S:深浅 s=0 只有灰度 V:明暗
- NV SDK 10 (1) Clipmaps
Clipmaps sample: Abstract Clipmaps are a feature first implemented on SGI workstations that allow ma ...
- Xamarin.Android 应用程序配置
* 在 Xamarin 中 Android 清单文件的内容一般不通过手动编辑,而是由编译器根据 项目属性设置 和 一系列 特性类 自动生成 1. 应用程序在android启动器中显示的名称设置: 主活 ...
- [转载]ERP实施40问 60分钟外行变专家
http://www.chinaodoo.net/thread-389-1-1.html 在多年的实践中,结合自身经验和多年的理论积累,总结出有关ERP实施的最关键的40个问题,以问答的形式,让您在最 ...
- 点击input时,里面默认字体消失显示
点击input时,点击input里面默认字体消失显示: <input type="" name="" id="" value=&quo ...
- NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds
Bugly: Trapped uncaught exception 'NSRangeException', reason: 'NSMutableRLEArray objectAtIndex:eff ...