精华内容
下载资源
问答
  • 介绍如何使用Maven构建前端工程,通过Publish over SSH插件发布到远程机器上的Nginx。文章中的示例进行了大量的简化,希望对...打包工具为maven-assembly-plugin插件,maven-assembly-plugin是Maven中一个强大的存在。

    本文是Jenkins应用系统文章的一部分,大部分来自工作和学习中的实践,部分内容来自官方文档和网友的文章,引用的文章会在“参考资料”部分附上原始链接,如无意中侵犯您的权利,请联系QQ:46106962,如需要进一步的交流请加入QQ群:(Jenkins部落:469536515,Jenkins部落-2:141762278)。转载和使用请注明出处。

    介绍如何使用Maven构建前端工程,通过Publish Over SSH(配置参考:Publish Over SSH)插件发布到远程机器上的Nginx。文章中的示例进行了大量的简化,希望对使用Jenkins+Maven构建PHP、H5工程、发布提供思路。打包工具为maven-assembly-plugin插件,maven-assembly-plugin是Maven中一个强大的存在。

    工程结构

    工程在svn上的路径:http://10.11.33.19/svn/code/demo/trunk
    目录结构:
    /css
    /js
    /images
    /user
    index.html
    pom.xml
    assembly.xml

    Maven配置

    POM

    <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.hyf.test</groupId>
        <artifactId>html-demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>pom</packaging>
    
        <name>Htmo Demo</name>
        <url>http://maven.apache.org</url>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    
            <fileName>demo</fileName>
        </properties>
        <build>
            <finalName>${fileName}</finalName>
    
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
    		<version>2.5.5</version>
                    <configuration>
                        <descriptors>
                            <descriptor>assembly.xml</descriptor>
                        </descriptors>
                    </configuration>
                    <executions>
                        <execution>
                            <id>make-assembly</id>
                            <phase>package</phase>
                            <goals>
                                <goal>single</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </project>

    ASSEMBLY

    <assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
        <id>html</id>
        <formats>
            <format>zip</format>
        </formats>
    
        <fileSets>
            <fileSet>
                <directory>${project.basedir}</directory>
                <includes>
                    <include>*.html</include>
                </includes>
                <useDefaultExcludes>true</useDefaultExcludes>
            </fileSet>
            <fileSet>
                <directory>js</directory>
                <useDefaultExcludes>true</useDefaultExcludes>
            </fileSet>
            <fileSet>
                <directory>images</directory>
                <useDefaultExcludes>true</useDefaultExcludes>
            </fileSet>
            <fileSet>
                <directory>css</directory>
                <useDefaultExcludes>true</useDefaultExcludes>
            </fileSet>
        </fileSets>
    </assembly>

    构建后Jenkins工作空间的目录结构

    /css
    /js
    /images
    /user
    /target
    /target/demo-all.zip
    index.html
    pom.xml
    assembly.xml
    以上只列出了部分重要目录和文件,“/”代表工作空间的根目录,实际目录结构请看Jenkins中相应job里的“工作空间”。

    Job中Publish Over SSH配置

    主要配置有
    Source files:这里的配置主要和工作空间的目录结构和构建生成的zip文件有关,具体怎么写要参照自己项目的工作空间来写,避免走弯路
    Remove prefix: 上传到远程机器时要过滤掉的目录,如下图中的“target”
    Exec command: 上传到远程机器后进行部署时用到的命令,这里进行了简化,只管部署不管备份和还原
    Exec in pty:主要和sudo的使用有关,如果运行job时不出现“sudo: sorry, you must have a tty to run sudo”错误不用勾选,默认未勾选
    配置如下图:









    展开全文
  • springboot maven打包静态资源文件

    千次阅读 2018-12-20 13:58:05
    在springboot的maven打包后发现,jar保重没有包含静态的资源文件静态资源位于src/main/webapp中,发现build中需要配置resource并增加这个路径: &lt;build&gt; &lt;resources&gt; &lt;...

    在springboot的maven打包后发现,jar保重没有包含静态的资源文件,静态资源位于src/main/webapp中,发现build中需要配置resource并增加这个路径:

    <build>
    		<resources>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.*</include>
                    </includes>
                    <filtering>true</filtering>
                </resource>
                <resource>
                    <directory>src/main/resources</directory>
                    <includes>
                        <include>**/*.*</include>
                    </includes>
                    <filtering>true</filtering>
                </resource>
                <resource>
                    <directory>src/main/webapp</directory>
                    <includes>
                        <include>**/*.*</include>
                    </includes>
                    <filtering>true</filtering>
                </resource>
            </resources>
    
    展开全文
  • maven 打包静态文件

    直接上代码

    <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>geexek_demo</groupId>  
        <artifactId>geexek_demo</artifactId>  
        <version>0.0.1</version>  
        <packaging>jar</packaging>  
        <build>  
            <!-- 利用yuicompressor-maven-plugin 插件,当打包项目时,自动压缩文件 -->  
            <plugins>  
                <plugin>  
                    <groupId>net.alchim31.maven</groupId>  
                    <artifactId>yuicompressor-maven-plugin</artifactId>  
                    <version>1.3.0</version>  
                    <executions>  
                        <execution>  
                            <goals>  
                                <goal>compress</goal>  
                            </goals>  
                        </execution>  
                    </executions>  
                    <configuration>  
                        <!-- 压缩文件编码 -->  
                        <encoding>GBK</encoding>  
                        <!-- 排除已压缩的文件,例如jquery-1.8.2.min.js -->  
                        <excludes>  
                            <exclude>**/**.min.js</exclude>  
                        </excludes>  
                        <!-- 不使用后缀 -->  
                        <nosuffix>true</nosuffix>  
                        <!-- 把文件压缩成一行 -->  
                        <linebreakpos>-1</linebreakpos>  
                        <!-- 指定需要压缩文件的目录,这是我的目录(修改为你自己的目录吧..) -->  
                        <sourceDirectory>${basedir}/assets</sourceDirectory>  
                    </configuration>  
                </plugin>  
            </plugins>  
            <resources>  
                <!-- 直接复制不用压缩的文件,图片,已经压缩的css,js -->  
                <resource>  
                    <directory>${basedir}/assets</directory>  
                    <includes>  
                        <include>**/**.min.js</include>  
                        <include>**/images/**</include>  
                    </includes>  
                </resource>  
            </resources>  
        </build>  
    </project>  

    配置好后,运行mvn clean package ,就可以把想压缩的静态文件,成功压缩!!

    展开全文
  • maven打包静态文件

    千次阅读 2014-09-15 22:29:43
    将近太文件进行zip打包,实现动静分离 pom.xml [code="xml"] org.apache.maven.plugins maven-assembly-plugin 2.2 make-assembly package ...
    将近太文件进行zip打包,实现动静分离
    pom.xml

    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.2</version>
    <executions>
    <execution>
    <id>make-assembly</id>
    <phase>package</phase>
    <goals>
    <goal>single</goal>
    </goals>
    <configuration>
    <appendAssemblyId>false</appendAssemblyId>
    <descriptors>
    <descriptor>${basedir}/static-zip.xml</descriptor>
    </descriptors>
    </configuration>
    </execution>
    </executions>
    </plugin>



    static-zip.xml

    <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0">
    <id>project</id>
    <formats>
    <format>zip</format>
    </formats>
    <includeBaseDirectory>false</includeBaseDirectory>
    <fileSets>
    <fileSet>
    <directory>${basedir}/target/static/xxx</directory>
    <outputDirectory>project/pai</outputDirectory>
    </fileSet>
    </fileSets>
    </assembly>
    展开全文
  • 由于项目集成了其他外部系统资源文件,需要根据不同的环境实现加载不同的JS资源文件,处理这个问题首先想到的便是通过判断当前环境实现动态加载JS,但是,在应用打包的时候已经明确了部署环境,对于静态资源的引用也...
  • org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <executions> <execution> <id>copy-resources</id> &...
  •  当把配置文件打包到jar包中. 明明读取路径正确, jar包中也有对应文件 却报FileNotFound.尝试使用这几种方案BufferedReader reader = null;reader = new BufferedReader(new FileReader(new ClassPathResou...
  • 问题: maven 打包时,有的文件打不进去...因为maven打包默认打Java文件。在项目中的pom文件中加build标签 <build>  <resources> <resource> <directory>src/main/java</d...
  • 项目使用maven打包后一般需要进行配置或者静态资源分离,可以使用 maven-assembly-plugin插件进行资源分离。 项目结构: pom文件: <build> <plugins> <plugin> <groupId>org....
  • 本次打包根据网上找到多种的配置,最终生成我的可以使用的配置方法,可能与在座的各位可能不一致,但是我自身使用没有任何问题,不足之处请谅解,谢谢。 环境准备 springboot2.1.0.RELEASE jdk 1.8 1.设置pom....
  • 原文:SpringBoot项目使用maven打包分离依赖的jar包和静态资源,并将其压缩成zip文件
  • 下面是利用 maven yuicompressor-maven-plugin 打包静态资源文件   费话不多说了,直接看配置文件就好了   现在我用的是 yuicompressor-maven-plugin 1.3.0,如果需要升级了,大家自己修改版本吧     ...
  • 文件目录如下 InputStream trustcaInputStream = Resources.getResourceAsStream("cert/ca.jks");... 打开pom.xml,必须把文件加入打包,不然是找不到的 <resources> <resource> ...
  • 由于项目集成了其他外部系统资源文件,需要根据不同的环境实现加载不同的JS资源文件,处理这个问题首先想到的便是通过判断当前环境实现动态加载JS,但是,在应用打包的时候已经明确了部署环境,对于静态资源的引用也...
  • <build> <plugins> <!-- 这个插件是用来打jar包的 --> <plugin> <groupId>org.apache.maven.plugins</groupId> ...maven-jar-plugin<...-- 将静态资源...
  • SpringBoot-Maven打包压缩瘦身

    千次阅读 2020-02-24 21:40:12
    Maven打包压缩瘦身一、Spring Boot 可执行 jar 分析1.1 打包1.2 两种 jar 的比较1.3 一次打包两个 jar二、SpringBoot迭代发布JAR瘦身配置三、引入内部编译的依赖四、Spring Boot Thin Launcher五、 maven的assembly...
  • 最近项目开发,发现springBoot项目在使用maven打包时,我们静态资源文件都放在resource目录下面,大致如下: 在使用maven打包时,发现静态资源没有打进去。原来springBoot默认静态资源路径的时resources. 那解决...
  • IDEA的maven项目中,默认源代码目录下的xml等资源文件并不会在编译的时候一块打包进classes文件夹,而是直接舍弃掉。如果使用的是Eclipse,Eclipse的src目录下的xml等资源文件在编译的时候会自动打包进输出到classes...
  • IDEA的maven项目中,默认源代码目录下的xml等资源文件并不会在编译的时候一块打包进classes文件夹,而是直接舍弃掉。 如果使用的是Eclipse,Eclipse的src目录下的xml等资源文件在编译的时候会自动打包进输出到...
  • spring boot 提供的打包方式,是把所有的文件打成一个jar包,静态文件无法分离出来 1.无法进行nginx动静分 2.jar过大,自己项目的代码其实很小,紧急更新上传很慢 故需要通过修改pom文件进行分离打包 直接放pom...
  • 首先,简单介绍MavenMaven是管理Java项目开发的工具,不是IDE,不是编译工具。...第一个作用,静态描述,即对POM文件所在的文件夹的(子)项目的介绍,比如该(子)项目的唯一标识(坐标),该子项...
  • 项目中遇到需要将vue打包到spring boot ...具体做法如下:将vue工程放到spring boot工程最外层修改pom文件org.codehaus.mojoexec-maven-pluginnpm-build-backgroundverifyexec${npm.command}runprod-package${basedir...
  • MyBatis打包遗漏mapper.xml文件解决方案 <!-- 原始方案【会导致静态资源调用失败】 --> <resources> <resource> <directory>src/main/resources</directory> <includes> &...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 167
精华内容 66
关键字:

maven打包静态文件