gradle打包web jar_打包WebJar实现对静态资源文件的统一依赖管理

WebJars的发布以及使用

WebJars是打包到JAR(Java Archive)文件中的客户端Web库(例如jQuery和Bootstrap)。

在基于JVM的Web应用程序中显式轻松地管理客户端依赖项

使用基于JVM的构建工具(例如Maven,Gradle,sbt,...)来下载客户端依赖项

传递依赖关系会自动解析,并可选择通过RequireJS加载

Web前端使用了越来越多的JS或CSS,如jQuery,Backbone.js和Bootstrap。一般情况下,我们是将这些Web资源拷贝到Java Web项目的webapp相应目录下进行管理。这种通过人工方式管理可能会产生版本误差,拷贝版本错误,漏拷等现象,导致前端页面无法正确展示,版本不一致,文件混乱等,导致出现一些莫名其妙的错误等。

WebJars是将web前端资源(js,css等)打成jar包文件,然后借助Maven工具,以jar包形式对web前端资源进行统一依赖管理,保证这些Web资源版本唯一性。WebJars的jar包部署在Maven中央仓库上。

webjar的使用

类似的使用方式:

org.webjars

jquery

2.2.4

org.webjars

bootstrap

3.3.6

SpringMVC配置引用

在Servlet3中可简化为:

Java配置

@Configuration

@EnableWebMvc

public class WebConfig extends WebMvcConfigurerAdapter {

@Override

public void addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");

}

}

在Servlet 3容器中,registry.addResourceHandler行可以简化为:

registry.addResourceHandler("/webjars/**").addResourceLocations("/webjars/");

使依赖版本不可知

使用Spring Framework 4.2或更高版本时,它将自动检测webjars-locator类路径上的库,并使用它自动为您解析任何WebJar资产的版本。要启用此功能,您需要将webjars-locator库添加为应用程序在pom.xml文件中的依赖项,如:

org.webjars

webjars-locator

0.30

打包webjar

新建maven项目,在pom.xml中

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">

4.0.0

org.sonatype.oss

oss-parent

7

jar

org.webjars

test

1.0.0-SNAPSHOT

Test

WebJar for Test

http://webjars.org

jamesward

James Ward

james@jamesward.com

Apache 2.0

https://github.com/facebook/react/blob/master/LICENSE

repo

http://github.com/webjars/react

scm:git:https://github.com/webjars/react.git

scm:git:https://github.com/webjars/react.git

HEAD

UTF-8

${project.build.outputDirectory}/META-INF/resources/webjars/${project.artifactId}/${project.version}

{

"paths": {

"test": "test"

}

}

org.apache.maven.plugins

maven-release-plugin

2.5.3

org.apache.maven.plugins

maven-deploy-plugin

deploy

deploy-file

jar

true

${project.distributionManagement.repository.url}

${project.artifactId}

${project.groupId}

${project.version}

${project.build.directory}/${project.artifactId}-${project.version}.jar

${project.basedir}/src/main/resources

${destinationDir}

true

release

http://192.168.0.215:8081/repository/maven-releases/

snapshot

http://192.168.0.215:8081/repository/maven-snapshots/

在maven的settings.xml中

release

admin

admin123

snapshot

admin

admin123

注意 值对应

运行命令:mvn clean package 打包jar;mvn deploy发布webjar到仓库。

Title

欢迎

web-bg.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue.js项目打包JAR(Java Archive)文件通常是在后端开发中使用Node.js和Webpack等工具结合Spring Boot框架的一种实践,目的是将前端代码整合到Java应用程序中,便于部署和管理。以下是打包过程的基本步骤: 1. **安装依赖**:首先,你需要在项目中安装一些必要的npm包,比如`webpack`、`vue-cli-plugin-springboot-starter`或类似的用于构建Vue应用并将其集成到Spring Boot的插件。 2. **配置Webpack**:在`.webpack.config.js`中设置合适的入口文件、出口文件打包模式。可能还需要配置`externals`选项,避免将整个Vue库打包进去,只暴露给后端。 3. **创建Spring Boot项目**:如果你还没有Spring Boot项目的基础,需要创建一个新的Spring Boot项目,并配置好相关的依赖,如Spring Web MVC、Thymeleaf等。 4. **引入Vue打包插件**:在Spring Boot项目的pom.xml中添加Vue打包插件的依赖,并在启动类上添加Vue应用的入口点。 5. **打包Vue代码**:运行Webpack命令,例如 `npm run build --prod` 或 `yarn build --production` 来生成生产环境下的minified JavaScript和CSS。 6. **整合到Spring Boot**:将Webpack打包后的静态资源目录(通常是`dist`文件夹)复制到Spring Boot项目的public目录下,或者作为模块直接引用。 7. **配置Spring Boot**:在Spring Boot的`application.properties`或`application.yml`中,设置静态资源的映射路径,使得前端应用可以通过URL访问。 8. **构建JAR**:最后,在Spring Boot项目中执行`mvn package`或`gradle build`命令,这会将完整的应用包括前端Vue代码打包成一个JAR文件。 相关问题-- 1. 如何在Vue项目中选择合适的打包插件? 2. 打包完成后,如何在Spring Boot中正确处理跨域问题? 3. 如何在JAR包部署后,保证Vue前端资源的加载速度?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值