春季应用程序在智能中运行工作,但java - jar没有

我用mySQL数据库创建了宁静的春季应用程序。MyApp在智能中运行良好,我用智能中构建工件构建罐子。当我运行罐子(爪哇 - 罐子)时,我得到了错误。


“不满意的依赖性”例外:创建名称为“组织弹簧框架”的 Bean 时出错,autoconfigure.orm.jpa.HibernateJpa 配置“:通过构造函数参数 0 表示的不满意依赖关系;嵌套异常是组织.springframework.beans.factory.Bean创建异常:创建名称为“数据源”的 Bean 时出错,该名称在类路径资源 [组织/弹簧框架/引导/自动配置/jdbc/数据源配置$Hikari.class]:通过工厂方法进行 Bean 实例化失败;嵌套的异常是 org.springframework.beans.BeanInstantiationException: 无法实例化 [com.zaxxer.hikari.HikariDataSource]:


这是我的应用程序。属性


spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver

spring.datasource.url=jdbc:mysql://localhost:3306/TestApp?useSSL=false

spring.datasource.username=root

spring.datasource.password=password

这是我的绒球.xml


<?xml version="1.0" encoding="UTF-8"?>

http://maven.apache.org/xsd/maven-4.0.0.xsd“> 4.0.0 网站示例 MyApp 1.0 快照罐


Helenr
浏览 79回答 2
2回答

慕仙森

我的jar运行良好,在我选择手动配置数据库连接后添加到应用程序类@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})然后创建@Configuration@PropertySource({ "classpath:app.datasource.properties" })class DatabaseConfig {@Autowiredprivate Environment env;@Bean@Primarypublic DataSource dataSource() {&nbsp; &nbsp; DriverManagerDataSource dataSource = new DriverManagerDataSource();&nbsp; &nbsp; dataSource.setDriverClassName(env.getProperty("app.datasource.driverClassName"));&nbsp; &nbsp; dataSource.setUrl(env.getProperty("app.datasource.url"));&nbsp; &nbsp; dataSource.setUsername(env.getProperty("app.datasource.username"));&nbsp; &nbsp; dataSource.setPassword(env.getProperty("app.datasource.password"));&nbsp; &nbsp; return dataSource;}&nbsp; &nbsp;&nbsp;我不知道为什么我的罐子不能从春天获得自动配置,也许有人可以在下面的评论中解释

ITMISS

这表明你的罐子里没有所有的依赖关系。您是否正在运行正确的jar - 您可能有多个 - 一个带有应用程序,一个来自不同目录的启动。很高兴看到您用于构建的命令。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java