Open fumitopapa opened 1 year ago
@fumitopapa
ご質問ありがとうございます。 いくつ仮説のもとに確認させてください。
問題ないように思いますが、念のためbuild.gradleの全体を貼って頂けますか? Spring Bootのバージョンなども確認したいです。
ブラウザのキャッシュが残っている可能性もありますので、
Ctrl + F5
も何度か試してみてもらえますか?
ブラウザのシークレットモードで表示してみるのもありです。
@HyunwookPark ご返信いただきありがとうございます。 まず、 1)設定ファイル id 'org.springframework.boot' version '3.1.5' ちなみに、同じ環境で別のバージョン試したが、結果同じです id 'org.springframework.boot' version '2.7.17' 2)ブラウザのことですが、 Ctrl+F5を試したが特に変化はありませんでした。 chrome と edge 両方確認しても変わらないです。 手元のJDKは Oracle のものです。別のメーカのJDK再度試してみます java version "17.0.2" 2022-01-18 LTS Java(TM) SE Runtime Environment (build 17.0.2+8-LTS-86) Java HotSpot(TM) 64-Bit Server VM (build 17.0.2+8-LTS-86, mixed mode, sharing)
plugins { id 'java' id 'war' id 'org.springframework.boot' version '2.7.17' id 'io.spring.dependency-management' version '1.0.15.RELEASE' }
group = 'com.example' version = '0.0.1-SNAPSHOT'
java { sourceCompatibility = '17' }
configurations { compileOnly { extendsFrom annotationProcessor } }
repositories { mavenCentral() }
dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' annotationProcessor 'org.projectlombok:lombok' providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' testImplementation 'org.springframework.boot:spring-boot-starter-test' }
tasks.named('test') { useJUnitPlatform() }
残念でした、別の環境でJDKから導入・VSCodeすべて一通りにしても、未解決のままです。 C:\Users\owner>curl http://localhost:8080 {"timestamp":"2023-10-23T06:46:31.184+00:00","status":404,"error":"Not Found","message":"No message available","path":"/"} C:\Users\owner>curl http://localhost:8080/test.html {"timestamp":"2023-10-23T06:46:53.348+00:00","status":404,"error":"Not Found","message":"No message available","path":"/test.html"} C:\Users\owner> C:\Users\owner> C:\Users\owner>curl http://localhost:8080/test.html aaaa C:\Users\owner>
起動された状態で、htmlファイルを追加し、保存しても、curlは無反応です、一旦再起動するとアクセスできました。とりあえずこの状態です
@fumitopapa あらら、残念です。
ちなみに、htmlファイルはSpringBootのリロード対象ではありません。 内部にあるTomcatというサーバを再起動しているのですが、 Javaのプログラムはサーバの再起動でないと読み込めないためdevtoolsによって自動リロードされる仕組みになっています。 htmlファイルはサーバを再起動しなくても最新が読まれます。
htmlファイルの配置場所はmotocatalog\src\main\resources\static
ですか?
おまけで試す程度ですが、 application.propertiesに以下の内容を追記してリロードされるかご確認ください。
spring.devtools.restart.additional-paths=src/main/resources
@HyunwookPark 返信ありがとうございます。設定追加しました。PJ再起動しましたが、変化はありませんでした。 最小限のPJ作成してもリロードできないことで、プラグインでなんにか相違があるでしょうか?
@fumitopapa こちらで試してみても確かにリロードされない現象が発生しますね。 spring-boot 3.1.5の場合もspring-boot 2.7.1でも同様に発生します。
ブラウザをchromeからedgeに変更するなど切り替えたり、 シークレットモードを使ったりしても最新のファイルが表示されないことから、 spring-bootで持つtomcat自体でキャッシュが残っているように思われます。
インターネットを探してもそれらしい解決策が見つからないですね。 以下の設定も私の方で試してみましたが効果はありませんでした。
spring.web.resources.cache.period=0
spring.web.resources.cache.cachecontrol.no-store=true
spring.devtools.remote.restart.enabled=true
spring.devtools.livereload.enabled=true
ただ、私が以前動画撮影時に作ったプロジェクトが残っているのですがこちらでは再現しないですね。 なかなか難解な現象ですね。
@HyunwookPark ありがとうございます。 まず一安心、自分の作法は間違っていないようです。開発環境でやはりなんにかかわるかもしれません。 ctrl+cで停止し、F5で再起動するちょっと面倒ですが、何とか進められます。 SpringBootの初期バージョンで「Spring Loaded」を追記する必要な記事がありますが、大分昔の内容です、最新環境いらないかもしれません。
@fumitopapa 一旦進められるところまで進めてみましょうか。 私の方で試した感じだと、単なるhtmlだけじゃなくThymeleafのtemplateもなかなかリロードされないですね・・・。 スッキリ解決できずすみません。
@HyunwookPark ありがとうございます、VSCodeの調査を一旦休止させていただきます。もしかしたらどこかのタイミングで解決方法見つかるかもしれない。 平行でほかの開発環境も試してみます。 誠にありがとうございます。
お世話になっております。 「[https://www.youtube.com/watch?v=QjxCHk2wyFs&t=1594s」の内容を参考し、プロジェクト作成したところで、ソース更新し、保存しても、ブラウザリロードしても更新されないです。
build.gradleの関連情報は下記の通りです dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' }
自動リロードの関連設定がございましたら、ご教授お願い致します。