Ad. 1 W jaki sposób mogę to zrobić ?
Ad. 2 Wrzuciłem plik do głównego folderu i teraz po próbie odpalenia dostaje info:
**[root@mojSerwer ~]# java -jar restApi.jar
no main manifest attribute, in restApi.jar
**
Ad 1. Z użyciem narzędzia chmod nadajesz uprawnienia, jednak widać plik się odpala, patrz punkt 2.
Ad 2. To w jaki sposób "zapakowałeś" (jak to sam określiłeś) swój program do .jar? Plik manifest możesz utworzyć ręcznie i wskazać go w swoim IDE przy tworzeniu artefaktu np. https://blog.jetbrains.com/idea/2010/08/quickly-create-jar-artifact/
Bardziej uniwersalnie deklarując w pliku .pom Mavena https://mkyong.com/maven/how-to-create-a-manifest-file-with-maven/ (lub jak już było podane wcześniej - utworzenie fat jar)
Już utworzyłem plik .jar. Następnie dodałem go do plików serwerowych a gdy próbuję go odpalić dostaje:
[root@mojSerwer ~]# java -cp api.jar com.myOwnApi.restApi.RestApiApplication
22:18:26.925 [main] DEBUG org.springframework.web.context.support.StandardServletEnvironment - Activating profiles []
. ____ _ __ _ _
/\ / ' __ _ () __ __ _ \ \ \
( ( )__ | '_ | '| | ' / ` | \ \ \
\/ )| |)| | | | | || (| | ) ) ) )
' || .__|| ||| |_, | / / / /
=========||==============|/=////
:: Spring Boot :: (v0.0.20131108.vaadin1)
22:18:27.224 [main] INFO com.myOwnApi.restApi.RestApiApplication - Starting RestApiApplication v0.0.20131108.vaadin1 on mojSerwer.smarkowski.pl with PID 6183 (/root/api.jar started by root in /root)
22:18:27.228 [main] DEBUG com.myOwnApi.restApi.RestApiApplication - Running with Spring Boot v0.0.20131108.vaadin1, Spring v0.0.20131108.vaadin1
22:18:27.230 [main] INFO com.myOwnApi.restApi.RestApiApplication - No active profile set, falling back to default profiles: default
22:18:27.233 [main] DEBUG org.springframework.boot.SpringApplication - Loading source class com.myOwnApi.restApi.RestApiApplication
22:18:27.413 [main] DEBUG org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext - Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@27a8c74e
22:18:27.434 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
22:18:27.664 [main] DEBUG org.springframework.context.annotation.ClassPathBeanDefinitionScanner - Identified candidate component class: URL [jar:file:/root/api.jar!/com/myOwnApi/restApi/api/OsobaAPI.class]
22:18:27.705 [main] DEBUG org.springframework.context.annotation.ClassPathBeanDefinitionScanner - Ignored because not a concrete top-level class: URL [jar:file:/root/api.jar!/com/myOwnApi/restApi/dao/OsobaRepo.class]
22:18:27.722 [main] DEBUG org.springframework.context.annotation.ClassPathBeanDefinitionScanner - Identified candidate component class: URL [jar:file:/root/api.jar!/com/myOwnApi/restApi/manager/OsobaManager.class]
22:18:27.813 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
java.lang.IllegalArgumentException: No auto configuration classes found in META-INF/spring.factories. If you are using a custom packaging, make sure that file is correct.
at org.springframework.util.Assert.notEmpty(Assert.java:464)
at org.springframework.boot.autoconfigure.AutoConfigurationImportSelector.getCandidateConfigurations(AutoConfigurationImportSelector.java:173)
at org.springframework.boot.autoconfigure.AutoConfigurationImportSelector.getAutoConfigurationEntry(AutoConfigurationImportSelector.java:116)
at org.springframework.boot.autoconfigure.AutoConfigurationImportSelector$AutoConfigurationGroup.process(AutoConfigurationImportSelector.java:396)
at org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGrouping.getImports(ConfigurationClassParser.java:877)
at org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorGroupingHandler.processGroupImports(ConfigurationClassParser.java:803)
at org.springframework.context.annotation.ConfigurationClassParser$DeferredImportSelectorHandler.process(ConfigurationClassParser.java:773)
at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:188)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:325)
at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:242)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:275)
at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:95)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:705)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:531)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:141)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:746)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:396)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1225)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1214)
at com.myOwnApi.restApi.RestApiApplication.main(RestApiApplication.java:10)
22:18:27.830 [main] DEBUG org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext - Closing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@27a8c74e, started on Tue Jan 28 22:18:27 GMT+01:00 2020
[root@mojSerwer ~]#