質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

解決済

1回答

5069閲覧

Spring IDEのSpring Bootでの初期不具合

honolius

総合スコア9

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

0クリップ

投稿2018/07/29 07:05

編集2018/08/01 04:21

前提・実現したいこと

STS(ver3.9.5及び3.8.4)とEclipseのプラグインでSpring BootのSpring starter projectを作っています。
dependenciesでWebとThymeleafを選択し、自動生成された@SpringBootApplication付きのクラスの中のmainメソッド内に作られたSpringApplication.runメソッドに以下のエラーメッセージが、ワークスペース上でのエラー状態で発生しました。また、この状態では@RequestMappingなどの一部のアノテーションが名前解決できなくなっています。

発生している問題・エラーメッセージ

//SpringApplication及び(DemoApplication.class, args)の部分 型 org.springframework.context.ConfigurableApplicationContext を解決できません。必要な .class ファイルから間接的に参照されています //runの部分 型 SpringApplication のメソッド run(Class<?>, String...) は存在しない型 ConfigurableApplicationContext を参照しています

該当のソースコード

java

1package com.example.demo; 2 3import org.springframework.boot.SpringApplication; 4import org.springframework.boot.autoconfigure.SpringBootApplication; 5 6@SpringBootApplication 7public class DemoApplication { 8 9 public static void main(String[] args) { 10 SpringApplication.run(DemoApplication.class, args); 11 } 12}

xml

1<?xml version="1.0" encoding="UTF-8"?> 2<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 6 <groupId>com.example</groupId> 7 <artifactId>demo</artifactId> 8 <version>0.0.1-SNAPSHOT</version> 9 <packaging>jar</packaging> 10 11 <name>demo</name> 12 <description>Demo project for Spring Boot</description> 13 14 <parent> 15 <groupId>org.springframework.boot</groupId> 16 <artifactId>spring-boot-starter-parent</artifactId> 17 <version>2.0.3.RELEASE</version> 18 <relativePath/> <!-- lookup parent from repository --> 19 </parent> 20 21 <properties> 22 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 23 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 24 <java.version>1.8</java.version> 25 </properties> 26 27 <dependencies> 28 <dependency> 29 <groupId>org.springframework.boot</groupId> 30 <artifactId>spring-boot-starter-thymeleaf</artifactId> 31 </dependency> 32 <dependency> 33 <groupId>org.springframework.boot</groupId> 34 <artifactId>spring-boot-starter-web</artifactId> 35 </dependency> 36 37 <dependency> 38 <groupId>org.springframework.boot</groupId> 39 <artifactId>spring-boot-starter-test</artifactId> 40 <scope>test</scope> 41 </dependency> 42 </dependencies> 43 44 <build> 45 <plugins> 46 <plugin> 47 <groupId>org.springframework.boot</groupId> 48 <artifactId>spring-boot-maven-plugin</artifactId> 49 </plugin> 50 </plugins> 51 </build> 52 53 54</project> 55

試したこと

・STSのバージョンを最新のものからEclipse Neon対応のものにダウングレードして試してみたが同じ現象が発生
・EclipseのプラグインからSTSを動かしてみたが同様の現象が起こる
・クイック・フィックスにあるビルド・パスの構成をいじってみた(JREシステム・ライブラリー[JavaSE1.8]、Maven依存関係の左のチェックボタンをチェックしてみたり、順序を変えてみた)
・STSを7-zipで解凍してC:に配置していたのをWindows10標準の解凍ソフトで解凍してC:に配置みた
・環境変数PATHとJAVA_HOMEに変数を登録し、コマンドプロンプトからjavac出来るようにしてみたが同様の現象が起こる
・pom.xmlのdependenciesを確認したが、webとtestとtymeleafだけだった。

補足情報(FW/ツールのバージョンなど)

Windows 10 Home 64bit
STS(ver3.9.5及び3.8.4)
Eclipse Spring IDEプラグイン(ver3.9.4)
Java8-162

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rubytomato

2018/07/31 07:28

エラーはどのようなときに発生したのでしょうか? たとえばアプリケーションの実行時、ビルド時、そもそもEclipseのワークスペース上でエラー状態なのか? 等の情報があればいいと思います。
guest

回答1

0

ベストアンサー

自分がEclipseを利用していて同じような事象になったときは、Mavenのローカルリポジトリから、org\springframework\spring-context\5.0.7.RELEASEをフォルダごと削除し、再度Maven更新をかけると解決しました。

自分の場合は、ConfigurableApplicationContextクラスを含む、spring-contextが上手くダウンロードできていなかったために発生していたようです。

同じ対応で解決するかは自信がありませんが、試していただければと。。

投稿2018/08/01 00:25

d-yosh

総合スコア270

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

honolius

2018/08/01 04:33

浅学で申し訳ありません。Mavenのローカルリポジトリから、org\springframework\spring-context\5.0.7.RELEASEをフォルダごと削除し、再度Maven更新をかける、というのはどのようにしたらよろしいのでしょうか?
d-yosh

2018/08/01 05:40

デフォルトの設定であれば、以下にMavenでダウンロードしたライブラリが配置されます。 `C:\Users[User名].m2\repository` ここたくさんフォルダがあると思いますので、org→springframework→spring-contextの中にある、5.0.7.RELEASEというフォルダを削除してください。 その後、EclipseやSTSで、プロジェクトを右クリック→「Maven」→「Update Project」→「OK」と選択してみてください。
honolius

2018/08/02 04:40

ありがとうございます。まだプロジェクトのエラーが消えないのですが、該当エラーは解除されました。 ちなみに.m2フォルダを全て削除してMaven更新をかけるあるいはプロジェクトを立ち上げるとMavenは正常に再構築されるのでしょうか?
d-yosh

2018/08/02 11:40

そこまでMavenに詳しくないのですが、.m2にライブラリがある場合は、Maven更新等を行っても新たにMavenのリポジトリからダウンロードされないはずです。 そのため、一度ダウンロードしたライブラリが何らかの原因で壊れていた場合、.m2から削除することで、再ダウンロードできるようになり、正常に動作することがあります。
honolius

2018/08/03 04:34

大変お世話になりました。さきほど.m2のrepositoryを全削除してから再度spring starter projectを走らせたところビルドも正常に通り、プロジェクトが異常なく立ち上がりました。やはり、ローカルリポジトリのエラーだったようです。 お付き合いいただき、ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問