• idea+maven构建web项目。


    第一步,创建maven项目。

     项目目录大致这样,如果不是这样手动改成这样。

    其实这样,直接跑tomcat,就可以起了。

    看下输出目录。

     不用管,自动生成的

     建议用这个目录搞。规范

     证明是web项目

     

     强烈建议这样的格式。

    启动项目

    一启动项目,就在  target/classes  目录编译文件。

    generated-sources目录不知道,不用管

    mavenDemo目录是最后输出的路径。

    如果打包的话,就会再 arget下 生成一个 mavenDemo.war 文件

    切记:!!!!

    我们打包之后,maven的依赖包都会在  mavenDemoWEB-INFlib  文件夹下。默认的。

    编译的源码都在mavenDemoWEB-INFclasses  文件夹下。也是默认的。

    如何将第三方引入的lib包打进war包里面

    <?xml version="1.0" encoding="UTF-8"?>
    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
    
      <groupId>com.kakaluote.maven</groupId>
      <artifactId>mavenDemo</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>war</packaging>
    
      <name>mavenDemo Maven Webapp</name>
      <!-- FIXME change it to the project's website -->
      <url>http://www.example.com</url>
    
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>com.github.penggle</groupId>
          <artifactId>kaptcha</artifactId>
          <version>2.3.2</version>
        </dependency>
        <dependency>
          <groupId>org.apache.curator</groupId>
          <artifactId>curator-recipes</artifactId>
          <version>2.10.0</version>
        </dependency>
      </dependencies>
    
      <build>
        <finalName>mavenDemo</finalName>
        <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
          <plugins>
            <!--项目自带的插件开始-->
            <plugin>
              <artifactId>maven-clean-plugin</artifactId>
              <version>3.1.0</version>
            </plugin>
            <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
            <plugin>
              <artifactId>maven-resources-plugin</artifactId>
              <version>3.0.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.8.0</version>
            </plugin>
            <plugin>
              <artifactId>maven-surefire-plugin</artifactId>
              <version>2.22.1</version>
            </plugin>
            <plugin>
              <artifactId>maven-war-plugin</artifactId>
              <version>3.2.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-install-plugin</artifactId>
              <version>2.5.2</version>
            </plugin>
            <plugin>
              <artifactId>maven-deploy-plugin</artifactId>
              <version>2.8.2</version>
            </plugin>
            <!--项目自带的插件结束-->
    
            <!--指定lib包编译的位置,默认就是/webapp/WEB-INF/lib/下 可以不指定  不建议指定。测试没发现变化-->
            <!--<plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.6.0</version>
              <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
                <compilerArguments>
                  <extdirs>${project.basedir}/src/main/webapp/WEB-INF/lib/</extdirs>
                </compilerArguments>
              </configuration>
            </plugin>-->
             <!-- 将其他目录的jar包打包到指定目录   主要配置-->
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-war-plugin</artifactId>
              <configuration>
                <webResources>
                  <resource>
                    <directory>E:/lib</directory>
                    <targetPath>WEB-INF/lib/</targetPath>
                    <includes>
                      <include>**/*.jar</include>
                    </includes>
                  </resource>
                </webResources>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
        <!--<resources>
          <resource>
            <directory>E:/lib</directory>
            <targetPath>WEB-INF/lib/</targetPath>
          </resource>
        </resources>-->
    
      </build>
    </project>

    码云地址

    https://gitee.com/lzh1995/mavenWebDemo

  • 相关阅读:
    [加密]公钥密码学和对称加密
    [加密]公钥/私钥/数字签名理解
    [加密]对称加密和非对称加密
    [进程]kill 9和15,以及pkill, killall
    [服务]Crontab和每隔10S执行一次
    sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory
    前端利器躬行记(2)——Babel
    前端利器躬行记(1)——npm
    React躬行记(13)——React Router
    React躬行记(12)——Redux中间件
  • 原文地址:https://www.cnblogs.com/coder-lzh/p/12164317.html
Copyright © 2020-2023  润新知