2016-10-19 27 views
1

開発中にキャッシュを無効にする必要があります。現在、JSまたはCSS(5〜10分かかります)を変更するたびにrun-appコマンドを再実行する必要があります。私が継承したこのレガシープロジェクトは、Tomcatが埋め込まれたGrailsを使用しています。Tomcat Grailsでキャッシングを無効にする

_Events.groovyファイル内eventConfigureTomcatフック内のTomcatの設定に関するオンライン話:

eventConfigureTomcat = { tomcat -> 
} 

が、私はcachingAllowed=falseを適用する方法上の任意のドキュメントを見つけることができません。

<Context className="org.apache.catalina.core.StandardContext" 
     cachingAllowed="false"> 
</Context> 

で保管してください私は完全なJavaのノブであることを覚えておいてください - 私は正しい方向に向ける人を探しています。興味がある人々のために

+0

ブラウザにキャッシュされていません。つまり、tomcatはキャッシュファイルを提供しています。 – geoctrl

+0

@quindimildev - はい - しかし、これは埋め込みのTomcatを実行しているGrailsです - したがって、grailsの設定ファイルだけです。 – geoctrl

答えて

1

あなたのGrailsのバージョンを指定しませんでした。 2.3からは-reloadingを追加する必要があります。

grails -reloading run-app 

これは私にとってはうまくいき、ブラウザが実際にリクエストをしていて、それ自体をキャッシュしていない限り、変更されたファイルを提供します。

3.xではこれはもう必要ないかもしれませんが、あなたのjs/cssを除外しているリロードのための設定オプションがあります。詳細については、ドキュメントの「再読み込み」を検索してください。

+0

あなたは私のヒーローです - 私はgrails 2.3を使用していますので、-reloadingを追加しました( 'run-app -reloading'の最後にフラグを付けたものを除いて) – geoctrl

+0

私はgrails 2.2を実行しています。他のjが見つかっても.jsにアクセスできなくなりました。ここで追加のヘルプを追加しますか?私はキャッシュディレクトリをクリアする場合はtomcat7サーバー上で、再起動し、私はそれが動作することを見つける... – Aaron

0

が、これは私がそれを得たとのためのようになります。

eventConfigureTomcat = { tomcat -> 
    def context = tomcat.host.findChild(serverContextPath) 
    context.cachingAllowed = false; 
} 

これはキャッシュの問題を解決しなかったので、しかしそれをテストする方法がわかりません。 GrailsのDEVビルドでファイルをキャッシュされ、そしてコミュニティがuglifying、より良いハンドル吹きにAsset Pipeline Pluginを使用することをお勧めしますことを発見したので、私が持っている

など

関連する問題