我想添加某种库,maven插件或“某物”来组合和压缩我的javascript和css源文件。
但是,我认为使用Java做到这一点非常困难。Rails的人们已经解决了这个问题……它使用未连接/未压缩的文件进行开发,然后在生产过程中压缩所有内容。它可以轻松执行此操作,因为您无需更改html标头或类似的内容-
它适用于测试和生产。这或多或少是我想要的。它甚至存在于Java空间吗?
我想做的最后一件事是注释和取消注释freemarker / html代码的开发和生产-
我希望一切都一样。理想情况下,我希望能够让Tomcat运行并为我的JavaScript和CSS编写代码,并立即查看我的更改-
不会出现延迟或问题。我也不想每次执行更改时都必须手动运行命令来生成新的javascript
…甚至不需要某些守护程序不断对其进行更新(因为在测试时,它可能不是瞬时的)。同时,如果我要打包战争进行生产,我希望它改用连接和压缩的文件。
这有可能吗?如果是这样,我应该看什么工具?我知道有很多方法可以做到这一点,但是它们在“不引人注目的”方面达不到要求。
谢谢
对我maven-minify-plugin
有用的解决方案是使用(groupId is com.samaxes.maven
),但 仅 在进行生产
时才 使用。使用构建属性来指定您是否处于开发模式。链接到插件
然后,您可以拥有类似的内容(我不知道freemarker,所以我只是粘贴一些JSP代码,但是我确信它可以轻松转换):
<c:choose>
<c:when test="${developmentMode}">
<link rel="stylesheet" type="text/css" href="<c:url value="/css/custom1.css"/>"/>
<link rel="stylesheet" type="text/css" href="<c:url value="/css/custom2.css"/>"/>
<link rel="stylesheet" type="text/css" href="<c:url value="/css/another1.css"/>"/>
<link rel="stylesheet" type="text/css" href="<c:url value="/css/another2.css"/>"/>
<script type="text/javascript" src="<c:url value="/js/mylibrary.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/more.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/util.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/whatever.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/more.js"/>"></script>
</c:when>
<c:otherwise>
<link rel="stylesheet" type="text/css" href="<c:url value="/css/minified.css"/>"/>
<script type="text/javascript" src="<c:url value="/js/minified.js"/>"></script>
</c:otherwise>
</c:choose>
这样,在开发过程中将使用非最小化/组合式JS / css,而最小化的CSS仅在为生产而构建时使用。
编辑:这里要求的代码是在ServletContext上公开Spring定义的bean的:
<bean class="org.springframework.web.context.support.ServletContextAttributeExporter">
<property name="attributes">
<map>
<!-- Obviously this can be changed to read from properties file -->
<entry key="developmentMode" value="false" />
</map>
</property>
</bean>
本文向大家介绍使用grunt合并压缩js和css文件的方法,包括了使用grunt合并压缩js和css文件的方法的使用技巧和注意事项,需要的朋友参考一下 需要了解的知识: 1、nodejs的安装与命令行使用 2、nodejs安装应用 3、grunt的初步了解 本文已假定读者已经熟悉以上知识。 好,我们继续: 任务1:将src目录下的所有zepto及插件合并,并压缩。 目录结构: 一、js合并压缩 第
本文向大家介绍Asp.net程序优化js、css实现合并与压缩的方法,包括了Asp.net程序优化js、css实现合并与压缩的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Asp.net程序优化js、css实现合并与压缩的方法。分享给大家供大家参考。具体实现方法如下: 访问时将js和css压缩并且缓存在客户端, 采用的是Yahoo.Yui.Compressor组件来完成的,用户可以点
问题内容: 有没有一种简单的方法可以用golang解压缩文件? 现在我的代码是: 问题答案: OP的解决方案略作修改,以创建包含目录(如果不存在),并将文件提取/写入包装在闭包中,以消除每个@NickCraig-Wood注释的调用堆积: 注意: 更新后还包括Close()错误处理(如果我们正在寻找最佳实践,则不妨遵循所有最佳实践)。
问题内容: 我很想听听您希望如何为Java Web应用程序自动化Javascript压缩。以下是我特别感兴趣的几个方面: 如何 整合? 它是构建工具的一部分,Servlet过滤器,对WAR文件进行后处理的独立程序还是其他工具? 启用和禁用 是否 容易 ?尝试调试缩小的脚本是很不有趣的,但是对于开发人员来说,测试缩小是否不会破坏任何东西也很有用。 它是否可以 透明地 工作,或者是否有我在日常工作中必
我正在使用Spring Boot(v1.2)和AngularJS应用程序。我正在尝试在我们的应用程序中实现GZip压缩来提高性能。 我想压缩我的JSON响应。我所做的... 底线是:我不清楚“纯servlet实现方式”和“Spring Boot”实现方式之间的区别。 在Spring Boot上下文中,有谁能列出需要和不需要的步骤吗?
问题内容: 我知道这是一项容易的任务,但是更改代码后它停止工作,并且无法恢复!我实际上使用了两个函数来进行压缩和解压缩,尽管实际上它是“ jar”和“ unjar”,但这并没有太大的区别 任何帮助/建议吗? 创建JarFile时发生错误: 问题答案: 我不知道这是否是您的问题,但是通常最好在完成写入后关闭每个zip条目。 请参阅。 在显示的代码中,不会关闭邮政编码中的最后一个条目。您也不会显示关闭