2017-01-13 7 views
0

私は最近、Spring Bootで私の最初のステップをやっています。私はこの記事https://spring.io/guides/gs/rest-service/#use-mavenを使って簡単なWebサービスを構築しました。Springブートを使用してWebサービスを呼び出す際のエラー

package com.example; 

import org.springframework.boot.SpringApplication; 
import org.springframework.boot.autoconfigure.SpringBootApplication; 

@SpringBootApplication 
public class DemoApplication { 

    public static void main(String[] args) { 
     SpringApplication.run(DemoApplication.class, args); 
    } 
} 


package com.example; 

import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RestController; 

@RestController 
public class HelloController { 

    @RequestMapping("/hello") 
    public String sayHi() { 
     return "Hi"; 
    } 

} 

私はでそれを実行する「スプリント・ブート:ファイル名を指定して実行」

これは私が書いたコードがある【選択コードが正常にコンパイルされ、数秒後に終了コードで終了1.エラーは、次のとおりです。

[ERROR]目標 org.springframework.boot実行に失敗しました:春・ブートのmaven-pluginの:1.4.3.RELEASE:プロジェクトのデモに (デフォルト-CLI)を実行します。実行中に例外が発生しました。 null:InvocationTargetException: ポート8080でリッスンするように設定されたコネクタ - [ヘルプ1] [エラー] [エラー] エラーのスタックトレースを表示するには、-eスイッチを使用してMavenを再実行します。 [エラー] 完全なデバッグログを有効にするには、-Xスイッチを使用してMavenを再実行します。 [ERROR] [ERROR]エラーと考えられる解決策の詳細については、 次の記事をお読みください:それはすぐに停止しているという事実は、Spring-ことを示している[ERROR] [ヘルプ1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

+1

パスDemoApplication.class()。コントローラークラスではありません。 –

+0

私はちょうどそれをやった。変化なし。 – CrazySynthax

+0

spring-boot-starter-web依存関係がありますか? – alexbt

答えて

1

をBootがクラスパスでtomcatを見つけられませんでした。

はあなたがTomcatが、見つけ自動設定し、アプリケーションで起動時に起動されるので、spring-boot-starter-webを含める必要があります。そこで、基本的

、ちょうど追加:

<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-web</artifactId> 
</dependency> 

他の問題は、真の問題ではありません:

コネクタがポート8080でリッスンするように構成

の起動に失敗しました。

これは、既にポート8080を使用している別のプロセスが原因です。これを回避するには、foあなたのapplication.propertiesでllowing:SpringApplication.runへ

server.port=8081 
関連する問題