项目打包结构

一,idea项目原结构

ics.credit

src

  mian

    java

      com.pingan.credit

    resources

        config

        一系列的配置文件

    webapp

        WEB-INF

            lib

            web.xml

        error.jsp

        index.jsp

二,idea项目打包后结构

  target

    classes

      com

      config

      一系列配置文件

打包后war包结构:

ics.credit

  error.jsp

  index.jsp

  META-INF

  WEB-INF

    classes

      com

      config

      一系列配置文件

    lib

    web.xml

总结:

1,打包谁?

java,resource,webapp目录下

2,打包到哪?

java,resource至 webapp--classes下

三,如何打包项目

方式一:配置Maven命令

位置:Edit configration--Maven--package--Parameters--command line:

配置命令:clean package -DskipTests

双击Maven名称即可自动打包。

方式二:项目生命周期

idea--右侧MavenProject--项目名称--Lifecycle--clean等相关命令

clean命令先删除本地target目录,在重新生成target目录

问题:

Lifecycle以及Plugins(generator命令)如何调出来的?

java项目中Classpath路径到底指的是哪里?                                 

1、src不是classpath, WEB-INF/classes,lib才是classpath,WEB-INF/ 是资源目录, 客户端不能直接访问。

2、WEB-INF/classes目录存放src目录java文件编译之后的class文件,xml、properties等资源配置文件,这是一个定位资源的入口。

3、引用classpath路径下的文件,只需在文件名前加classpath:

<param-value>classpath:applicationContext-*.xml</param-value> 
<!-- 引用其子目录下的文件,如 -->
<param-value>classpath:context/conf/controller.xml</param-value>

4、lib和classes同属classpath,两者的访问优先级为: lib>classes。

5、classpath 和 classpath* 区别:

classpath:只会到你的class路径中查找找文件;
classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找。

    

原文地址:https://www.cnblogs.com/shenkebky/p/8258448.html