Saya memiliki masalah dalam menjalankan jar yang dibuat melalui 'mvn package'. Saya mencoba berbagai solusi tanpa hasil.
pom.xml
<groupId>org.springframework</groupId>
<artifactId>rest-service</artifactId>
<version>0.1.0</version>
<packaging>jar</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.4.RELEASE</version>
</parent>
...
<properties>
<java.version>1.8</java.version>
<start-class>ves.sfdc.Application</start-class>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
projectroot\src\main\java\ves\sfdc\application.java
@SpringBootApplication
@Configuration
@ComponentScan
@EnableAsync
@EnableScheduling
@EnableAutoConfiguration
public class Application{
@Autowired
JdbcTemplate jdbcTemplate;
@Autowired
AccountService accountService;
@Autowired
static
SfdcUtil sfdcUtil= new SfdcUtil();
@Autowired
NamedParameterJdbcTemplate jdbcTemplate2;
public static void main(String[] args) throws SecurityException, IOException {
SpringApplication.run(Application.class, args);
}
}
Proyek ini berfungsi dengan baik di Eclipse, dan ketika saya melakukan mvn spring-boot:run
Saya bertanya-tanya apakah saya melewatkan sesuatu di sini?
Dengan Spring Boot Anda tidak memerlukan maven-shade-plugin. Spring Boot akan mengurus pengemasan yang diperlukan.
Jika Anda memiliki beberapa kelas dengan metode utama, Anda dapat mengkonfigurasi spring-boot-maven-plugin dengan yang benar:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>ves.sfdc.Application</mainClass>
</configuration>
</plugin>
Anda dapat menemukan daftar konfigurasi yang memungkinkan dalam dokumentasi plugin maven: http://docs.spring.io/spring-boot/docs/1.5.3.RELEASE/maven-plugin/repackage-mojo.html
Masalah dalam hal ini adalah dengan maven . Dependensi yang telah Anda unduh tidak memiliki versi yang diperlukan. Beberapa dependensi bekerja secara massal satu sama lain dan beberapa kali mereka hanya cocok dengan versi tertentu dari jar lain.
Solusi:- Ini akan memakan waktu tetapi hapus .m2 dan bangun kembali maven untuk mengunduh semua dependensi lagi. atau Anda memiliki dua versi dependensi yang sama. Jadi periksa semua jar maven dan hapus jar yang memiliki nama yang sama.
Dalam kasus saya itu adalah ketergantungan yang salah/tidak tepat.
Ditemukan di marker > problems yang menyoroti
.pom
bukan arsip yang valid.
compile group: 'org.apache.httpcomponents', name: 'httpcomponents-client', version: '4.5.6.6', ext: 'pom'
Mengubah ini menjadi
`compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.6'`