• maven实现打包带源代码的jar包


    实现方法一:
    pom文件添加以下及节点

    <build>
       <resources>
          <resource>
        <directory>src/main/java</directory>
          </resource>     
        </resources>
    </build>
    

    说明:默认的资源文件夹是src/main/resource,此方法修改了资源文件夹,让你默认的资源文件夹变成了src/main/java文件夹。而这个文件夹在maven中是默认放置源代码的。
    缺点:修改之后,src/main/resource文件夹就不是资源文件夹了,放在里面的文件将不会被当作资源。

    实现方法二:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.3</version>
        <executions>
        <execution>
            <id>copy-resources</id>
            <phase>process-resources</phase>
            <goals>
            <goal>copy-resources</goal>
            </goals>
            <configuration>
            <outputDirectory>${project.build.outputDirectory}</outputDirectory>
            <resources>
                <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.java</include>
                </includes>
                </resource>
            </resources>
            </configuration>
        </execution>
        </executions>
    </plugin>
    

    说明:插件maven-resources-plugin默认处理资源和测试资源,把资源加入到文件夹${project.build.outputDirectory},这个引用表示项目的输出文件夹。
    一般是项目的WEB-INFclasses文件夹。等到打包的时候,就把这个文件夹里面的内容打包成jar文件。所以想要把源代码打包到jar文件里面
    ,就需要把源代码当作资源文件添加到文件夹${project.build.outputDirectory}。
    缺点:代码比较长
    优点:不会修改资源文件夹,项目结构不用改变,推荐使用这一种

  • 相关阅读:
    KubernetesConfigMap
    SpringCloudEureka
    KubernetesIngress
    ModuleNotFoundError: No module named 'MySQLdb'
    Django将默认的SQLite更换为MySQL
    Django模板
    如何让他人访问本地启动的django服务
    django.db.utils.OperationalError: no such table: auth_user
    Django 模型字段类型和字段参数总结
    Django模型
  • 原文地址:https://www.cnblogs.com/zhousiwei/p/10625746.html
Copyright © 2020-2023  润新知