2011-06-10 47 views
1

我是J2EE的新手,我无法理解构建java web项目时创建的目录结构。经过一番Google搜索,我明白了我们在WEB-INF中存储的内容,但是
1)我无法理解我们在META-INF中存储了什么?
2)如何创建目标文件夹?
3)我们在哪里提到所有文件应放置在目标文件夹中?当我们构建一个java web项目时会发生什么

我正在使用Maven构建基于spring-hibernate项目的项目。

在此先感谢

回答

4

1)What's the purpose of META-INF?

2)的Maven为您创建的目标文件夹。这是所有Maven插件在默认情况下转储他们的工作的地方。

3)Maven有从中排除文件的机制。

理解Maven的关键是Maven在约定上工作。这意味着,如果您根据Maven的期望来构建项目,Maven几乎可以毫不费力地完成很多工作。例如,这是在源目录中的Java类和资源之间如何区分:

src/main/java/com/mycompany/MyObj.java 
src/main/resources/my/company/spring.context.xml 
src/test/java/com/mycompany/MyObjTest.java 
src/test/resources/my/company/spring.context.xml 

当你运行mvn test它会编译所有这一切,适当地在其移动到目标文件夹,加载的JUnit运行和给你一个类路径,让Spring可以轻松访问测试文件夹下的spring上下文。它将运行测试并将报告放在目标下。

Maven不像Ant。在蚂蚁中,你必须告诉它一切。 Maven在另一端工作,因为默认情况下它默认所有的东西,除非你另有说明。

2

这是一个常见的问题,因为Java已经变得如此巨大。通常很难说出一种技术在哪里结束,另一个开始。您需要熟悉所使用的各种组件的文档。例如,如果你有一个'target'文件夹,那么我假设你使用的是maven。 Maven是一个用于依赖管理的java工具。当你“创造”一个项目时,你同意遵守一堆标准,而maven反过来为你做了许多繁重的工作(编译代码,寻找相关库和运行测试)。什么行家的部分确实是建立在这种情况下,“目标”

更多行家信息标准的Maven目录 - http://maven.apache.org/

至于META-INF这是Java EE规范的一部分。它的确有一个包装和部署的目的,但是你通常不会经常使用它。它通常与maven的原理相同。您坚持使用Java EE标准,并且符合Java EE标准的工具为您完成大部分工作。

欲了解更多信息看看这个链接 - http://java.sun.com/blueprints/guidelines/designing_enterprise_applications/packaging_deployment/index.html

一般了解这些,你应该检查出Java EE的一些教程,并参阅你的容器的例子和文档。

+0

谢谢@ nsfyn55 – 2011-06-13 09:13:49

相关问题