그것은 무엇을 유물,면, 모듈의 개념을 의미합니까?

그것은 무엇을 유물,면, 모듈의 개념을 의미합니까?

전송 : https://www.cnblogs.com/bityinjd/p/9284378.html

첫째, 모듈, 아래 그림과 같이, 모듈 jdwork의 시작 부분에서 발생하고, 찾을 수 없습니다 web.xml 파일을 배포 한 후, 웹 애플리케이션 내부 하위 디렉토리,이 방법으로 우리의 새로운 세대를 넣고 한 번에 프로젝트를 시작하지 않았다 이 문서. 이에 해당하는 것은 그 일반 폴더 사이에 구별로 표시되지 않은 프로젝트 디렉토리 구조 웹 애플리케이션.

I는 이전 웹 프로젝트는 웹 프로젝트 아닌, 최 외측 층은 두 개의 모듈, 즉 sm_service, sm_web을 갖는 staffManage 일반 폴더이고,이 프로젝트를 staffmanage 좋아

 

그런 다음 다시 첫 번째 경우에, 그것은 다음과 같이 우리가 수동으로 추가 할 필요가 웹 프로젝트가 될 jdwork입니다 :

진정한 경로에 프로젝트에 대한 두 가지 경로를 수정하는 참고 기본 경로가 잘못 될 수 있습니다.

나는이 희미한 특히 몰랐어요 것처럼 수정 된 프로젝트 디렉토리 후 봐, 변화가있다.

 

음,이 문제를 해결하기 위해, 원칙은 몇 가지를 논의했다.

패싯 모듈에서 사용되는 프레임 워크 기술 언어의 다양성을 나타냈다. 이 패싯은하게 IntelliJ IDEA 모듈 컨텐츠를 치료하고, 일관되고 적절한 프레임 워크와 언어를 확인하는 방법을 알려주세요.

패싯은 모듈과 같은 웹, strtus2, 봄, 최대 절전 모드 등;와 같은 일부 기능을 나타내는
등 모듈을 패키징하는 방법을 보여 받는다는의 개념이다, 예를 들어, 전쟁, 폭발 전쟁, 단지, 귀 유물,이 포장 형태 ;

 

이 IntelliJ에 아이디어, 패싯의 개념을 포함한다. 당신이 관찰하는 경우, 그것은 프로젝트 모듈, 하나 아래 라이브러리, 그 역할은 프로젝트를 지원하는 프레임 워크를 구성하는 것입니다, 프로젝트 구조 섹션에서 찾을 수 있습니다.

 

比如我们现在要开发的是一个 web 项目,那就需要 web 相关的 Facet,事实上,如果没有这个配置支持,编译器也不知道这个项目是个 web 项目,也就不会去读取 web.xml 的配置,更无法被 tomcat 这种容器支持。

 

Facet 是和 Module 紧密结合的,你如果是在 Module 里配置了,那么 Facet 里边也会出现,而如果你先在 Facet 里配置,它会要求你选择 Module,所以结果是一致的。

 

再就是解释下 Artifacts,它的作用是整合编译后的 java 文件,资源文件等,有不同的整合方式,比如war、jar、war exploded 等,对于 Module 而言,有了 Artifact 就可以部署到 web 容器中了。其中 war 和 war exploded 区别就是后者不压缩,开发时选后者便于看到修改文件后的效果。

 

谈到 Artifacts,就得说一下几个输出目录的问题,Project 选项里有一个 Project compilerc output 目录,这个是整个 Project 的编译输出目录;Modules 的具体单个 Module 的 Path 选项里有个 Compiler output,可以选择继承 Project 或者自定义输出目录,如下图所示:

 

然后就是 Artifacts 也有一个 Output Directory,这几个的关系是怎样的呢?

前两者的关系好理解,就是一个总体和个体配置的关系。而 Artifacts 里的输出目录是跟容器有关系的,在容器运行的时候,会把前两者中起作用的那个(个体配置优先)的 classes 文件复制到 Artifacts 配置的目录的 WEB-INF下边,然后把 Module 的 Facet 里的资源文件目录复制到 Artifacts 目录里,再就是复制 lib 下的 jar 包到 WEB-INF 下,之后项目就可以启动了。

 

추천

출처blog.csdn.net/qq_28817739/article/details/93843599