簡體   English   中英

登錄后如何使Linux從Spring Boot啟動?

[英]How to make linux start with the spring boot after login?

在Linux登錄失敗之后,我嘗試從spring開始啟動,有人可以告訴我我做錯了什么嗎?

我有兩個問題..

我可以僅通過調用sudo用戶來運行該應用程序,如果沒有發生以下錯誤

        java.lang.IllegalStateException: Tomcat connector in failed state
        at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:157)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:288)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:140)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:483)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:117)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:689)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:321)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:969)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:958)
        at br.com.nextinfo.MainApplication.main(MainApplication.java:28)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
        at java.lang.Thread.run(Thread.java:745)

         2015-11-16 19:59:22.368  INFO 3400 --- [           main] ationConfigEmbeddedWebApplicationContext : Closing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@52f6002c: startup date [Mon Nov 16 19:59:13 BRST 2015]; root of context hierarchy
        2015-11-16 19:59:22.369  INFO 3400 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Unregistering JMX-exposed beans on shutdown
        java.lang.reflect.InvocationTargetException
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:497)
            at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
            at java.lang.Thread.run(Thread.java:745)
        Caused by: java.lang.IllegalStateException: Tomcat connector in failed state
            at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:157)
            at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:288)
            at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:140)
            at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:483)
            at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:117)
            at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:689)
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:321)
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:969)
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:958)
            at br.com.nextinfo.MainApplication.main(MainApplication.java:28)
            ... 6 more

向我解釋為什么會發生此錯誤..如何使應用程序在Linux上的用戶登錄后運行,並指出該登錄是在沒有sudo權限的情況下自動發生的,那么jar應該以755權限運行嗎?

thank you advanced.

應該簡單明了。我相信您使用的是端口80,而不是8080:

低於1024的端口是特權端口,因此需要sudo用戶

請參閱文件:

http://www.w3.org/Daemon/User/Installation/PrivilegedPorts.html

通過類似於-Dserver.port = 8080的運行VM參數傳遞服務器端口,或者搜索application.properties並在其中指定server.port = 8080。

以上應該可以正常工作。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM