2017-03-31 16 views
1

Spring、JPA、MySQL、Webを使用してアプリケーションを構築しました。テンプレートフォルダに静的ページを正常に作成しています。SpringブートDebtoolsがEclipseで動作しない

しかし、静的なページで何かを変更すると、変更を加えてリロードすることはできません。次に、pom.xmlを開き、追加しました。

私はアプリケーションを再起動しますが、静的ページを変更してもまだ動作しません。

さらに詳しいことはありますか?春ブーツのドキュメントによると

私のpom.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.engsoftware</groupId> 
    <artifactId>cobranca</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 

    <name>Cobranca</name> 
    <description>Demo project for Spring Boot</description> 

    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.5.2.RELEASE</version> 
     <relativePath/> <!-- lookup parent from repository --> 
    </parent> 

    <properties> 
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 
     <java.version>1.8</java.version> 
    </properties> 

    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-data-jpa</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-thymeleaf</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 

     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <scope>runtime</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-tomcat</artifactId> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
      <scope>test</scope> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-devtools</artifactId> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
    </build> 


</project> 
+0

コマンドライン 'mvn spring-boot:run'から実行してみてください。これはSTSとコマンドラインから同じPOMで動作しています。 – 11thdimension

+0

[LiveReload extension](http://livereload.com/extensions/)をインストールしていますか? – codingbash

+0

ChromeにLiveReload拡張機能がインストールされています。しかし、まだ動作していません。別のブラウザで開いた場合、変更を加えずに同じページを表示します。私もブラウザのキャッシュをきれいにしようとしましたが、成功しませんでした。私はMavenと何もインストールしないでください。 –

答えて

0
を無効にするには、ファイル、あなたのプロパティでプロパティを設定する必要があります。

私はこの記事に続きましたhttps://github.com/spring-projects/spring-boot/issues/7479

だから、デベロッパーツールの作品に、あなたが追加する必要があります。

<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-devtools</artifactId> 
    <optional>true</optional> 
    <scope>runtime</scope> 
</dependency> 

秘密はオプションtrueと範囲ランタイムを追加することです。

1

:春ブート・デベロッパーツールを使用

アプリケーションは自動的にクラスパスの変更の都度ファイルを再起動します。これは、コード変更のための非常に高速なフィードバックループを提供するので、IDEで作業するときには便利な機能です。デフォルトでは、フォルダを指すクラスパス上のエントリは変更を監視されます。静的アセットやビューテンプレートなどの特定のリソースでは、アプリケーションを再起動する必要はありません。

http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html#using-boot-devtools-restart

テンプレートと静的な資産は再起動を必要としません。ほとんどの場合、新しいテンプレートを要求する代わりに、ブラウザがテンプレートをキャッシュし、キャッシュされたバージョンを使用している可能性があります。ブラウザのキャッシュをクリアすると、更新されたテンプレートが表示されます。


EDIT:

使用しているテンプレートの技術に応じて、あなたがテンプレートキャッシュに

# Thymeleaf 
spring.thymeleaf.cache = false 

#FreeMarker 
spring.freemarker.cache = false 

#Groovy 
spring.groovy.template.cache = false 

http://docs.spring.io/spring-boot/docs/current/reference/html/howto-hotswapping.html#howto-reload-static-content

+0

ChromeにLiveReload拡張機能がインストールされています。しかし、まだ動作していません。別のブラウザで開いた場合、変更を加えずに同じページを表示します。私もブラウザのキャッシュをきれいにしようとしましたが、成功しませんでした。私はMavenと何もインストールしないでください。 –

+0

@ JohnMendes Eclipseで、devtools依存関係を追加した後、プロジェクトのクリーンな再構築を試みましたか?また、テンプレートには何を使用していますか? – jmw5598

+0

ちょうどあなたのポンを見て、タイメレフの依存関係を見ました。プロパティファイルでThymeleafテンプレートキャッシュをfalseに設定する必要があります。 spring.thymeleaf.cache = false – jmw5598

関連する問題