2014-12-19 104 views
0

我與下面的conf彈簧啓動的jar:與端點春季啓動創建兩個Tomcat的容器

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

     <dependency> 
    <groupId>org.jolokia</groupId> 
    <artifactId>jolokia-core</artifactId> 
    <version>1.2.2</version> 
    </dependency> 
    <dependency> 
    <groupId>org.jolokia</groupId> 
    <artifactId>jolokia-client-javascript</artifactId> 
    <version>1.2.2</version> 
    <type>javascript</type> 
    </dependency> 

管理屬性

info.app.name=MyApp 
info.app.description="blah blah" 
info.app.version=1.0.0 
peg.sendInterval.millis=3600000 
instance.name=Appster 
jolokia.config.debug=true 
endpoints.jolokia.enabled=true 
endpoints.jolokia.path=jolokia 
spring.jmx.enabled=true 
endpoints.jmx.enabled=true 
management.port=9001 
management.address=<super-secret-ip> 
security.user.name=admin 
security.user.password=cracked 

當我指定管理端口(9001),我看到一個單獨的Tomcat實例。除了:9001之外,還有一個在8080/localhost上運行的默認Tomcat實例。如果我將管理端口指定爲8080,則無效。我如何禁用在8080上運行的默認驅動程序?

+0

您的目標是在不使用HTTP的應用程序中通過HTTP公開管理端點?或者,應該可以將兩個端口配置爲相同的值。你說「沒有用」。你能擴展一下嗎?你看到什麼失敗?你是如何確定事情沒有奏效的? –

+0

application.properties看起來像什麼指定了要使用spring引導嵌入式服務器的端口? – ndrone

回答

1

設置server.port=-1將關閉主應用程序Web端點(根據docs here)。

+0

謝謝戴夫。正如你所提到的,這將禁用端點。但是,嵌入式Tomcat仍然被加載。是否有一個屬性可以防止加載默認的嵌入式Tomcat。我可以使用JMX停止並銷燬它,但我確定必須有一些屬性來防止加載。 – user425518

+1

您可以設置'spring.main.webEnvironment = false'(或在'SpringApplication'中使用setter)。你是這個意思嗎? –

+0

我正在使用Jolokia進行JMX-HTTP橋接,除了默認外,它還生成一個單獨的嵌入式Tomcat。我只想關閉默認設置,而不是第二個。您指定的選項似乎可以防止加載兩者。 – user425518