当前位置: 首页 > 知识库问答 >
问题:

资源找不到错误,那么资源插件呢

江阳冰
2023-03-14

我使用grails已经快一年了。从现在开始,我想在gsp中链接css或js文件。我做了以下几件事:

>

  • 我在web-app文件夹下创建了一个新文件(例如资源文件),并将所有文件夹放在那里(例如导入bootstrap时,我在资源下有一个父文件夹bootstrap,在bootstrap下有css、img和js文件夹及其文件)。

    然后,为了导入一个css文件,我做了以下操作(以下是相关文档):

    这非常有效,但当我试图在grails 2.2.4中创建一个新项目时,我遇到了一个Resource not found错误(404到浏览器,下面是控制台)。

    ERROR resource.ResourceMeta  - Resource not found: /resources/bootstrap/css/bootstrap.min.css
    ERROR resource.ResourceMeta  - Resource not found: /resources/bootstrap/js/bootstrap.min.js
    ERROR resource.ResourceMeta  - Resource not found: /resources/bootstrap/css/bootstrap.min.css
    ERROR resource.ResourceMeta  - Resource not found: /resources/bootstrap/js/bootstrap.min.js
    

    当我意识到控制台中的这些错误一次来自资源函数,一次来自客户端(浏览器)请求的GET。

    在查看参考资料插件时,我看到他们建议使用js和css文件夹。在这两个目录中拆分一个工具(如twitter引导)有意义吗?

  • 共有3个答案

    戚宏扬
    2023-03-14

    我也有同样的问题,我不知道你有什么设置,但我在我的邮件顶部有这个。普惠制页面:

    <link rel="stylesheet" href="${resource(dir: 'css', file: 'bootstrap.css')}" type="text/css">
    

    (在标签内)

    如果你需要进口。js文件这对我来说很有用:

    <script src="${resource(dir: 'js', file: 'bootstrap.js')}"></script>
    

    这是在页面的最底部-tag里面。

    我使用的是Grails2.1.1。

    郎伟兆
    2023-03-14

    这个问题的另一个答案如下:

    1. 清理你的项目

    现在一切都很顺利

    夏侯元忠
    2023-03-14

    好的,我相信我有一个(半)可行的解决方案:

    假设我们需要包括Twitter Bootstrap 3和TinyMce

    在webapp目录下,我创建以下目录:

    resources/bootstrap/
    resources/bootstrap/css/
    resources/bootstrap/css/bootstrap.min.css
    resources/bootstrap/fonts/
    resources/bootstrap/fonts/glyphicons-halflings-regular.eot
    resources/bootstrap/fonts/glyphicons-halflings-regular.svg
    resources/bootstrap/fonts/glyphicons-halflings-regular.ttf
    resources/bootstrap/fonts/glyphicons-halflings-regular.woff
    resources/bootstrap/js/
    resources/bootstrap/js/bootstrap.min.js
    resources/jquery/
    resources/jquery/jquery-2.0.3.min.js
    resources/tiny_mce/
    resources/tiny_mce/langs/ /*many files here*/
    resources/tiny_mce/plugins/ /*many files here*/
    resources/tiny_mce/themes/ /*many files here*/
    resources/tiny_mce/utils/ /*many files here*/
    resources/tiny_mce/tiny_mce_popup.js
    resources/tiny_mce/tiny_mce_src.js
    resources/tiny_mce/tiny_mce.js
    

    然后我声明我的资源在Applicationesources.groovy

    modules = {
        application {
            resource url:'js/application.js'
        }
    
        jquery {
            resource url:'resources/jquery/jquery-2.0.3.min.js'
        }
    
        bootstrap {
           dependsOn 'jquery'
           resource url:'resources/bootstrap/css/bootstrap.min.css'
           resource url:'resources/bootstrap/js/bootstrap.min.js'
        }
    
        tinymce {
            resource url:'resources/tiny_mce/tiny_mce.js'
        }
    }
    

    在配置中。棒极了

    grails.resources.adhoc.patterns = ['/images/*', '/css/*', '/js/*', '/plugins/*']   /*no changes here*/
    grails.resources.adhoc.excludes = ['/**/langs/**/*.*', '/**/themes/**/*.*']  /*to permit some Ajax calls from tiny_mce.js to relevant resources*/
    grails.resources.debug=true 
    /* 
    this is why I call my solution SEMI working. 
    If set grails.resources.debug to false, TinyMce is NOT working because the above excludes are not active, and I receive 404 errors
    */
    

    然后,大体上。普惠制

    <!DOCTYPE html>
        <head>
            <g:javascript library="application"/>
            <g:javascript library="bootstrap"/>
            <g:javascript library="tinymce"/>
    
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
            <title><g:layoutTitle default="Grails"/></title>
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <link rel="shortcut icon" href="${resource(dir: 'images', file: 'favicon.ico')}" type="image/x-icon">
            <link rel="apple-touch-icon" href="${resource(dir: 'images', file: 'apple-touch-icon.png')}">
            <link rel="apple-touch-icon" sizes="114x114" href="${resource(dir: 'images', file: 'apple-touch-icon-retina.png')}">
            <link rel="stylesheet" href="${resource(dir: 'css', file: 'main.css')}" type="text/css">
            <link rel="stylesheet" href="${resource(dir: 'css', file: 'mobile.css')}" type="text/css">
    
            <r:layoutResources />
            <g:layoutHead/>
        </head>
        <body>
            <div id="grailsLogo" role="banner"><a href="http://grails.org"><img src="${resource(dir: 'images', file: 'grails_logo.png')}" alt="Grails"/></a></div>
            <g:layoutBody/>
            <div class="footer" role="contentinfo"></div>
            <div id="spinner" class="spinner" style="display:none;"><g:message code="spinner.alt" default="Loading&hellip;"/></div>
    
            <r:layoutResources />
        </body>
    </html>
    

    在索引中。普惠制

    <head>
    ...
    <script type="text/javascript">
    $(function() {
        tinymce.init({selector:'textarea'});
    });   
    </script>
    </head>
    <body>
    ...
    <h1>Welcome to Grails</h1>
    check bootstrap - start
        <span class="glyphicon glyphicon-search"></span>
        <button type="button" class="btn btn-default btn-lg">
         <span class="glyphicon glyphicon-star"></span> Star
        </button>
    check bootstrap - stop
    
    <textarea>Your content here.</textarea>
    ...
    </body> 
    

    使用上面的方法,我有了完全可操作的JQuery、Bootstrap3和TinyMCE,但是如果我在配置中设置了。棒极了

    grails.resources.debug=true 
    

    我收到了404个与grails相关的错误。资源。临时的。排除TinyMce在页面加载后动态获取的资源。

    有线索吗?我很快就能找到解决方案,所以我很高兴能得到您的意见。这个测试项目可以从这里下载:https://docs.google.com/file/d/0B8epX7R4j7jeaVh5OTFiQlV4V0U/edit?usp=sharing

     类似资料:
    • 警告:不推荐使用属性,它对生成过程没有影响。/home/midhilaj/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/be3106efb0df111fe5a3f7b356dd070b/res/values/values.xml错误:(246,5)错误:resource android:找不到attr/fontvaria

    • http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd“> 我不明白该如何解决这件事,请帮帮我

    • 问题内容: 在最近对Android Studio进行更新之后,我们在获取一个可以编译以前有效的项目时遇到了问题。最初,我们收到以下错误: 我将gradle文件中的sdk构建目标更新为23,这使这个特定的问题消失了,但是它给了我们很多apache.http包错误(特别是,我们用于http东西的很多apache包现在都消失了在SDK 23中)。 我想做的是解决奇怪的资源错误,但是没有更新到sdk23。

    • 在Android Studio最近的一次更新之后,我们在编译以前工作的项目时遇到了问题。一开始我们得到以下错误: 我将gradle文件中的sdk构建目标更新到了23,这使得这个特定的问题不复存在,但它给我们留下了大量apache.http包错误(具体来说,我们用于http的大量apache包现在在sdk 23中消失了)。 我想做的是解决奇怪的资源错误,但不更新到SDK23。我现在没有时间重新编写工

    • 以下 是对开发kibana 插件有用的资源 IRC channel kibana 官方为大家注册了一个类似聊天室的通道,在这里大家可以获取有用咨询和交流 Freenode Web Client. 文章 contributing guide kibana-plugin-notes(强烈推荐阅读) 视频 Contributors Guide to the Kibana Galaxy Kibana Pl

    • 我正在做一个项目,编译并运行我的IDE工作正常。所有资源都找到了,它正常工作。然而,当我构建我的. jar时,它能够找到一些资源,但不是全部。我的项目结构看起来是这样的: 当我运行jar文件时,它能够找到图像并使用它们,但是当我尝试访问html文件时,它不会打开。下面是jar的项目结构; 我以前从未处理过jar文件,所以这似乎是我犯的一个非常明显的错误。感谢您的帮助,谢谢! 编辑:访问找不到的文件