zoukankan      html  css  js  c++  java
  • Eclipseproject标准的文件夹层次

    为什么特别写一个文档首场讲座解释什么层次,你是eclipse正在使用java.io.File类在读workspace档,我相信不知道eclipse,为了避免以后再出现这样的令人难堪的情况,还是编写这样一篇扫盲性的说明文档比較合适。

    当然重点绝不是上面的资源路径怎么编写。而是影响环绕整个project的生命周期的构建活动。

    首先看一下eclipse在默认情况下创建一个普通的Java Project的文件夹结构:

    clip_image001

    clip_image002

    从上面能够看出来eclipse在创建一个Java Project的时候会创建一个默认的Source folder名为src。该文件夹下的全部文件经过编译之后会输出到同级的bin文件夹下。关于working set,非常好理解,用来分类管理项目project,你创建的project主要用来做什么?属于什么类别?考虑完这两个问题你就知道放置在哪个详细的working set中了。

    默认情况下,Package Explorer不显示working set,这须要将working set作为顶级元素的设定方法例如以下:

    clip_image004

    非常多人在编写測试用例的时候喜欢用一个main方法在被測试程序内部中进行測试,如此把測试代码和生产代码混合在一起对程序可读性简直是毁灭性的打击,所以还是建立一个专门的測试类吧,測试类的命名最好遵从一定的规范这样大家都easy识别,建议将被測试类名+Test作为基本測试类的命名规则。关于測试类的存放又是有门道的,非常多人喜欢在src下建立一个package叫做test,然后在这里面存放全部的測试用例。还是那句话,測试类不应该出如今生产环境下,所以还是将測试类放到一个单独的source folder以下吧。

    clip_image005

    clip_image006

    以下分享一个创建測试用例的简便方法:

    如今我有一个这种类须要进行測试

    package cn.seit.eclipse;
    public class HelloEclipse {
    public static String sayHello(String name) {
    return "Hello" + name;
    }
    }

    首先在Package Explorer中选中HelloEclipse这个java文件。然后新建一个JUnit Test Case,eclipse会自己主动完毕以下这些事情:

    clip_image007

    点击Next,选择须要測试的方法

    clip_image008

    完毕之后,能够发现被測试类和測试用例的关系例如以下:

    clip_image009

    这样一来两者之间就建立了一定的相应关系。通过一方能够轻松知道还有一方的存放位置。

    引用上面将測试用例存放在一个专门的资源目录下的思想,我们相同能够将project中产生的配置文件放置在一个专一的资源目录下。

    clip_image010

    clip_image011

    Java Project公布通常是通过jar包的方式。我们能够在导出jar的时候做一下轻松设定。就将測试用例从生产环境中脱离了。

    clip_image012

    上面主要就是讲述了一个project的资源文件的合理存放位置,用过maven的朋友对这样的方式会很熟悉,由于maven的project结构就是这样子的。

    Maven提倡使用一个共同的标准文件夹结构,使开发者能在熟悉了一个Mavenproject后。对其它的Mavenproject也能清晰了解。这样做也省去了非常多设置的麻烦。

    下面的文档介绍是Maven希望的文件夹结构。而且也是文件夹创建project是採用的文件夹结构。Maven推荐大家尽可能的遵守这种文件夹结构。

    src/main/java

    Application/Library sources

    src/main/resources

    Application/Library resources

    src/main/filters

    Resource filter files

    src/main/assembly

    Assembly descriptors

    src/main/config

    Configuration files

    src/main/webapps

    Web application sources

    src/test/java

    Test sources

    src/test/resources

    Test resources

    src/test/filters

    Test resource filter files

    src/site

    Site

    LICENSE.txt

    Project's license

    README.txt

    Project's readme

    看,maven的思想还是相当值得借鉴的,使用一个统一的标准文件夹层级结构能够为开发人员大大减少沟通成本,提高团队的运行效率。我想在软件开发整个行业里面,大家遵循统一的标准对行业的发展会起到一个非常好的促进作用,谢谢。

    作者:萧易客

    时间:2014/6/4

    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    HDU2034:人见人爱A-B
    Codeup1085: 阶乘的和
    HDU2037:今年暑假不AC
    剑指Offer(Java版)第二十七题:从上往下打印出二叉树的每个节点,同层节点从左至右打印。
    剑指Offer(Java版)第二十六题:输入两个整数序列,第一个序列表示栈的压入顺序, 请判断第二个序列是否为该栈的弹出顺序。 假设压入栈的所有数字均不相等。 例如序列1、2、3、4、5是某栈的压栈序列, 序列5、4、3、2、1是该压栈序列对应的一个弹出序列, 但4、3、5、1、2就不可能是该压栈序列的弹出序列。
    剑指Offer(Java版)第二十五题:包含min函数的栈
    剑指Offer(Java版)第二十四题:顺时针打印矩阵
    MongoDB学习笔记10——分片
    MongoDB学习笔记9——复制
    MongoDB学习笔记8——优化
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4625152.html
Copyright © 2011-2022 走看看