`
小于Brick
  • 浏览: 88935 次
  • 性别: Icon_minigender_1
  • 来自: 新疆
社区版块
存档分类
最新评论

grails3 打包后静态资源访问不到

阅读更多

项目打包完成后,资源基本上都引用不到了。要用asset-pipeline插件的引入方式重新改一边-. -!

调试一下发现基本上原因是开发阶段访问项目时候是没有项目名的,在tomcat运行时候有项目名称造成的:

http://localhost:8080/

http://localhost:8080/demo

的区别。 

 

使用的版本:grails3.1.5

grails3中默认使用了这个插件:

runtime "org.grails.plugins:asset-pipeline"

 官方插件:http://grails.org/plugin/asset-pipeline 

 插件介绍及配置:http://bertramdev.github.io/grails-asset-pipeline/guide/configuration.html

 

在项目使用过程中,第一次使用grails3 没有太注意这个插件。还是按照原来html资源引入的方式进行引入的。

如:

<link href="assets/xxx/css/font-awesome.min.css" rel="stylesheet" type="text/css" />
<img src="assets/xxx/img/loading.gif" alt="loading"/> 
2.x这种写法也是不行的:
<link href="${resource()}/jquery-xxx/themes/icon.css" rel="stylesheet" type="text/css" >

assets/xxx这种方式在index/index.gsp中使用打包后是没问题的,但是如果是其他页面如user/index.gsp页面这种方式不打包能引用,打包后引用不到。尽量所有的静态资源都使用assets-pipeline插件引入的方式来引入,因为有时候,我们需要通过使用CDN或nginx来访问被分离出来的资源。

 

需要通过assetPath(src:'。。。。')写src 的路径。

如:

<img src="${assetPath(src: 'xxx/img/loading.gif')}" alt="loading" /> 

 

 还有其他的写法,资源判断的标签、服务中获取资源等

具体参照官方使用文档:http://bertramdev.github.io/grails-asset-pipeline/guide/usage.html

 

另外在使用bootstrap或者easyui 等插件库的时候,我们并不想打乱原有的插件目录结构,不想把插件原有的js、css、图片等挨个的粘贴到assets目录下的javascript、images 等目录。

 

需要在assets下建立一个目录(myplugins),这个目录随便建的,但是引入的时候一定不要加myplugins。(建好后需要重启)

 

 

在myplugins 下放jquery-easyui-1.4.5的所有文件。

在页面引用的时候类似于这样:

<link rel="stylesheet" type="text/css" href="${assetPath(src:'jquery-easyui-1.4.5/themes/gray/easyui.css')}">
<script type="text/javascript" src="${assetPath(src:'jquery-easyui-1.4.5/jquery.easyui.min.js')}" ></script>

 注意上面src 中是没有添加myplugins这一级目录的。

没有深究为啥,反正必须要这么写。打成war包tomcat解压后assets中是没有myplugins这个目录的。

 

 

 

 

 

分享到:
评论

相关推荐

    grails3 CAS链接接数据库

    总之,"grails3 CAS链接接数据库"涉及到的主要知识点有:Grails 3框架、CAS单点登录系统的集成、Spring Security配置、数据库连接配置以及可能的角色权限管理。通过以上步骤,可以为Grails应用构建一个安全且高效的...

    grails 开发框架-3

    grails1.0开发框架3 类似于ruby on rails的框架。

    Grails Grails Grails

    3. **插件系统**:Grails 插件是一组可重用的功能模块,可以快速增强应用程序的功能,如Spring Security、Asset Pipeline等。 4. **命令行工具**:Grails 提供强大的命令行工具,支持创建项目、运行应用、生成代码...

    grails 3.3.2 资源下载

    3. **GORM**: Grails 提供了GORM(Grails Object-Relational Mapping),一个强大的ORM框架,用于处理数据库操作。GORM支持多种数据库,如MySQL、PostgreSQL等,并且提供了一种简洁的Domain Class API,使得数据库...

    一步一步学grails(3)

    3. **显示格式化后的生产编号**: - 通过在 `ProductionNo` 类中添加一个新的 `toString` 方法来实现。 - 方法格式为:`String.toString('%1$%2$-%3$02d%4$', coo.shortName, prefix, sno, suffix)`。 - 在创建...

    Grails权威指南 Grails权威指南

    通过《Grails权威指南》,你可以学习到如何利用Grails的强大功能来开发高效、可扩展的Web应用,同时也了解到如何利用Groovy语言和Grails框架的最佳实践,提升你的开发技能。这本书深入浅出地讲解了Grails的各个方面...

    Grails 3开发邮件发送功能

    需要注意的是,授权码并不等同于邮箱登录密码,授权码是在邮箱服务商处开启SMTP服务后生成的,用于邮件客户端或者应用程序进行身份验证。 4. 在控制器(Controller)中创建发送邮件的方法。在此步骤中,你需要定义...

    grails-2.4.4.zip

    3. **Grails核心组件** - **GSP(Groovy Server Pages)**:Grails 的视图层技术,结合了HTML和Groovy,允许在页面上直接进行编程。 - **Controllers**:处理用户请求,负责业务逻辑的调度,与模型进行交互,将...

    grails中文文档

    3. **GORM 数据库访问**:Grails 的 GORM(Grailed Object Relational Mapping)提供了一个简单易用的 ORM 解决方案,用于与数据库交互。通过注解和动态方法,你可以轻松操作数据。 4. **Grails 控制器**:学习如何...

    Eclipse下搭建Grails项目

    - 安装完成后,确保设置`GRAILS_HOME`环境变量,并将其路径添加到系统的`PATH`变量中,确保这两个变量都在同一级别(用户级或系统级)。 - 打开命令行,输入`grails`,如果显示帮助信息,表明Grails已成功安装。 ...

    grails-用户手册

    总结来说,《Grails用户手册》涵盖了从项目创建到部署运行的全过程,包括Grails的基础概念、MVC架构、持久化、插件系统、视图技术、URL映射、测试策略等多个方面。通过学习和实践,开发者可以充分利用Grails的强大...

    grails-core源码

    在解压后的`grails-core-master`目录中,我们可以看到Grails的核心模块组织结构。通常,一个开源项目的源码结构反映了它的设计思路和功能划分。`src/main/groovy`包含了主要的源代码,`src/test/groovy`用于存放测试...

    grails-3.0.5-ga (2/2)

    3. **GORM (Grails Object-Relational Mapping)**: GORM是Grails的内置ORM框架,允许开发者使用Groovy DSL来处理数据库操作,支持多种数据库,如MySQL、PostgreSQL等。 4. **Grails Command Line Interface (CLI)**...

    eclipse开发grails插件

    3. **配置Grails环境**:安装插件后,需要在Eclipse中配置Grails的路径,这样Eclipse才能找到Grails命令行工具。这通常在"Eclipse Preferences" -&gt; "Grails"中设置。 4. **创建Grails项目**:现在,你可以通过...

    Grails 3.X开发实战

    ### Grails 3.X开发实战:Groovy基础详解 #### Groovy简介 Groovy是一种针对Java虚拟机(JVM)设计的动态编程语言,它融合了多种语言的优点,包括Python、Ruby以及Smalltalk等,旨在提供更为灵活和高效的开发体验。...

    grails 中文文档+grails-fckeditor-0.9.5.zip插件

    3. Convention over Configuration(CoC):Grails的核心理念之一就是“约定优于配置”,这意味着开发者在很多情况下不需要写大量的配置文件,框架会自动根据约定进行工作。 二、Grails中文文档的价值 1. 学习入口...

    grails app

    对于生产环境,可以使用`grails war`打包成WAR文件,部署到Tomcat或其他Servlet容器。 尽管缺少图片,但我们仍能从代码中解读出Grails应用的基本结构和工作原理。通过深入研究每个部分,无论是初学者还是经验丰富的...

    grails快速开发web

    - **Grails 社区的发展**:随着越来越多的开发者加入到 Grails 的开发中,其社区也在不断壮大。 综上所述,Grails 不仅提供了快速开发 Web 应用程序的有效手段,而且还为开发者构建了一个充满活力的社区环境。无论...

Global site tag (gtag.js) - Google Analytics