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

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

新規登録して質問してみよう
ただいま回答率
85.37%
Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Spring Boot

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

Q&A

解決済

1回答

85411閲覧

【spring-boot】EclipseでMaven依存関係フォルダができない

Chi

総合スコア15

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Spring Boot

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

1グッド

2クリップ

投稿2016/07/15 08:23

編集2016/07/19 01:49

###前提・実現したいこと
EclipseでMaven依存関係と、JREシステム・ライブラリーを取得したいです。
(pom.xmlで指定したライブラリをEclipseからの操作でインストールしたいです。)

###pom.xmlで出てるエラーメッセージ

プロジェクト・ビルド・エラー: Non-resolvable parent POM for com.example:demo4:0.0.1-SNAPSHOT: Failure to transfer org.springframework.boot:spring-boot-starter-parent:pom:1.3.6.RELEASE from https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced. オリジナル・エラー: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.3.6.RELEASE from/to central (https://repo.maven.apache.org/maven2): Failed to authenticate with proxy and 'parent.relativePath' points at no local POM

###Demo4Application.java

package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @EnableAutoConfiguration @SpringBootApplication public class Demo4Application { @RequestMapping("/") String home(){ return "Hello World !"; } public static void main(String[] args) { SpringApplication.run(Demo4Application.class, args); } }

###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.example</groupId> <artifactId>demo4</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>demo4</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.6.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-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>

###application.properties

spring.application.name=cruncher spring.datasource.driverClassName=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost/test server.port=9000

###試したこと
①SPRING INITIALIZR(https://start.spring.io/)でMaven Project「demo4」作成し、ユーザのホームディレクトリ配下に置いてます
(作成時:DependenciesにWebを選択)
②上記のように「Demo4Application.java」「pom.xml」「application.properties」を編集
③Eclipseに「demo4」をインポート
プロジェクトのディレクトリ構成

※「Maven依存関係」と「JREシステム・ライブラリー」が追加されません!

###他の方法では成功
「試したこと」①②と同様
③コマンドプロンプト上でコンパイル(mvn package)
④コマンドプロンプト上で実行(mvn spring-boot:run)
http://localhost:9000 にアクセスしHello World!が出力されていることを確認済
⑤Eclipseにインポートして実行し、同様にHello Worldが出力されていることを確認済

###補足情報(言語/FW/ツール等のバージョンなど)
Eclipse:Mars.2 Release (4.5.2)
Spring Tool Suite(STS) for Eclipse 3.7.3RELEASE
JDK:jdk1.8.0_66
JRE:jre1.8.0_66
Maven:3.3.3

今はコマンドプロンプト上から必要なjarをインストールすることが出来ますが、Eclipseからpom.xmlで指定したライブラリーをインストールしたいです。

アドバイスよろしくお願い致します。

###A-pZさんのアドバイスより

  • 実行したこと

・Spring Initializrからプロジェクト生成
・改行コードをCRLFに置換
→Demo6Application.java/Demo6ApplicationTests.java
・pom.xmlの修正(<properties>の一部コメントアウト)

~ Eclipseにプロジェクトをインポート ~
プロジェクトのディレクトリ構成

・ローカルリポジトリから「…spring-boot-starter\1.3.6.RELEASE」を削除
・Eclipseよりmaven clean を行ったところエラーがでました

Downloadの部分でエラーが発生していますが、Eclipseのネットワークは正しく設定できています。(マーケットプレースは問題なく使えます)
m2eでsetting.xmlのプロキシ設定が読み込めないことがあると聞きましたが、これが原因でしょうか。

お手数お掛けしますが、よろしくお願い致します。

###maven clean実行時のエラーメッセージ

[WARNING] [WARNING] Some problems were encountered while building the effective settings [WARNING] expected START_TAG or END_TAG not TEXT (position: TEXT seen ...</nonProxyHosts> -->\n\t</... @47:4) @ C:\Users\ncb.aokic\.m2\settings.xml, line 47, column 4 [WARNING] [INFO] Scanning for projects... [INFO] Downloading: https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-starter-parent/1.3.6.RELEASE/spring-boot-starter-parent-1.3.6.RELEASE.pom [ERROR] [ERROR] Some problems were encountered while processing the POMs: [FATAL] Non-resolvable parent POM for com.example:demo6:0.0.1-SNAPSHOT: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.3.6.RELEASE from/to central (https://repo.maven.apache.org/maven2): Failed to authenticate with proxy and 'parent.relativePath' points at no local POM @ line 14, column 10 @ [ERROR] The build could not read 1 project -> [Help 1] [ERROR] [ERROR] The project com.example:demo6:0.0.1-SNAPSHOT (C:\Users\ncb.aokic\demo6\pom.xml) has 1 error [ERROR] Non-resolvable parent POM for com.example:demo6:0.0.1-SNAPSHOT: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.3.6.RELEASE from/to central (https://repo.maven.apache.org/maven2): Failed to authenticate with proxy and 'parent.relativePath' points at no local POM @ line 14, column 10 -> [Help 2] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException [ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException
A-pZ👍を押しています

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

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

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

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

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

guest

回答1

0

ベストアンサー

確かにプロジェクトをインポートしたところ、同じようにmaven経由のビルドエラーが検出されました。Windows版だと改行コードCRLFなのに対し、Spring Initializerから生成したプロジェクトはLFのみなため、問題が発生します。

私の環境では次のように操作して解決しました。

  • pom.xmlの修正 - propertiesの定義から以下のようにコメントアウト

xml

1<properties> 2 <!-- 3 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 4 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>--> 5 <java.version>1.8</java.version> 6</properties>

ビルドエラーを出してしまってるローカルリポジトリから以下を消す。(今回は1.3.6で検証)

......\.m2\repository\org\springframework\boot\spring-boot-starter\1.3.6.RELEASE

削除できないときはEclipseのm2eプラグインがjarファイルをつかみっぱなしになっているため、いったんEclipseを閉じてから削除を行う。

  • 改行コードの訂正

クラスファイル・テストクラスファイルの改行コードがLFになっているので、元のソースコードの内容をどこかに退避しておいてから削除し、新たにクラスファイルを作成する。
(ないしは一括でクラスファイルの改行コードを置換する)

  • mvn clean install の実行

以上で解決はしましたが、もっと抜本的な解決方法があるかもしれません。ご参考までに。

投稿2016/07/15 10:09

A-pZ

総合スコア12011

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

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

Chi

2016/07/19 01:51

ご回答ありがとうございます。 アドバイスの通りに修正したのですが、解決できませんでした。 実行した内容を質問に追記しておりますので、恐れ入りますが対応していただけると幸いです。
A-pZ

2016/07/19 03:26

expected START_TAG or END_TAG not TEXT (position: TEXT seen ...</nonProxyHosts> -->\n\t</... @47:4) のところが正しく読み取れていないようです。 お手数ですが、settings.xmlならびにpom.xmlの改行コードも再確認していただけませんか。
Chi

2016/07/19 06:27

settings.xml のタグの部分に誤字がありました・・・申し訳ありません。 settings.xml を修正したところ、Eclipseからでも実行することができました。 本当にありがとうございました!
A-pZ

2016/07/19 06:40

d(・ω・ わかりづらいところをよく解決したと思います!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問