我正在尝试使用JPA和H2嵌入式db学习Spring Boot。我创建了一个repo,它复制了我在github上可用的问题。它基于教程;在此处找到源。
我的最终状态是使用以下所有方法将其作为单个模块项目运行:
目前main()方法与其他两种方法有所不同,但我不知道为什么。
如果我删除module-info.java文件,那么所有方法都退出0。我知道我可以忽略它,但我正在尝试学习这里,所以我想知道发生了什么。
Intellij构建信息:
IntelliJ IDEA 2020.3.2(社区版)Build#IC-203.7148.57,建于2021年1月26日
设置了jdk 15,但没有模块信息。java:
添加以下模块信息。java文件到/src/main/java:
module demo {
exports com.example.accessingdatajpa;
opens com.example.accessingdatajpa;
requires org.slf4j;
requires spring.boot;
requires spring.boot.autoconfigure;
requires spring.context;
requires spring.data.commons;
requires java.persistence;
requires java.sql;
}
通过在intellij中运行main()运行应用程序并获取出口1:
C. E. A. AccessingDataJpaApplication:启动AccessingDataJpaApplication使用Java15.0.2 on...
c. e. a. AccessingDataJpaApplication:没有活动配置文件集,返回到默认配置文件:默认
.s.d.r.c.RepositoryConfigurationDelegate:在默认模式下引导Spring数据JPA存储库。
.s.d.r.c.RepositoryConfigurationDelegate:在166毫秒内完成Spring数据存储库扫描。找到1个JPA存储库接口。
o、 s.j.d.e.EmbeddedDatabaseFactory:启动嵌入式数据库:url='jdbc:h2:mem:3cb47b25-69e1-4122-bc0f-69447d509171;DB\U CLOSE\U DELAY=-1;DB\u CLOSE\u ON\u EXIT=false',username='sa'
s、 c.a.AnnotationConfigApplicationContext:上下文初始化期间遇到异常-取消刷新尝试:
组织。springframework。豆子。工厂BeanCreationException:创建名为“entityManagerFactory”的bean时出错,该bean在类路径资源[org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]中定义:调用init方法失败;嵌套的异常是javax。坚持不懈PersistenceException:无法解析持久性单元根URL
o、 s.j.d.e.EmbeddedDatabaseFactory:关闭嵌入式数据库:url='jdbc:h2:mem:3cb47b25-69e1-4122-bc0f-69447d509171;DB\U CLOSE\U DELAY=-1;DB\u CLOSE\u ON\u EXIT=false'
以jar或mvn spring boot运行:运行并获取退出代码0:
。。。c、 e.a.AccessingDataJPAA应用程序:开始访问DataJPAA应用程序v0。0.1—在……上使用Java 15.0.2进行快照。。。c、 e.a.AccessingDataJPA应用程序:无活动配置文件集,正在下降
......... d. r. c.存储库配置委托:以DEFAULT模式引导Spring Data JPA存储库。
......... d. r. c. RepositoryConfiguration委托:在126毫秒内完成Spring数据存储库扫描。找到1个JPA存储库接口。
...com.zaxxer.hikari.HikariDataSource: HikariPool-1-开始。
...o.hibernate.jpa.internal.util.LogHelper:HHH000204:处理PeristenceUnitInfo[名称:默认]
任何帮助都将不胜感激。
我发现我的module-info.java文件中缺少以下要求语句。现在run, mvn spring-boot: run和run jar的行为方式相同。
requires java.xml.bind;
requires net.bytebuddy;
requires com.fasterxml.classmate;
我仍然不知道为什么run main()需要这个,而不是其他两种方法。我相信这与hibernate有关,因为我在添加java后看到了以下异常。xml。绑定
BeanCreationException(实体管理工厂-
看起来我需要在模块信息中明确指定可传递依赖项。java,如果所使用的依赖项的模块声明需要传递,我想我就不必这样做了。
还有java。xml。bind正在读取javax。现在从两个来源激活并显示为错误。其中一个来自spring boot starter测试,尽管它在我的测试范围内。随着我了解更多,我将更新此答案。
我有一个java应用程序与maven具有以下结构: 我已经在父pom中配置了PMD和checkstyle。xml。对于PMD,规则集的配置如下所示,对于父模块和子模块都可以正常工作: 但是,对于检查样式,如果我以同样的方式配置配置位置,它将在父级或子级中失败。我必须使用自定义属性来克服这一点。 这是一个复制样本-https://github.com/ramtech123/pocs/blob/mas
包括和配置模块 某些模块只能用于特定功能。 pap模块就是这样,仅用于身份验证。 相反,sql模块可用于授权,会话检查以及记帐。 这完全取决于模块作者所包含的功能。 sql模块(rlm_sql.so)使用子模块。 这创建了一个抽象层。 根据主sql模块的配置方式,它将使用特定的子模块与某种类型的数据库进行交互。 子模块可用于连接MySQL(rml_sql_mysql.so),PostgreSQL(
使用具有不同配置的一个模块 FreeRADIUS允许您使用具有各种配置的一个模块。 如前所述,如果您熟悉编程术语,则类似于具有不同实例的对象。 试一试 - 创建一个模块的多个实例 Isaac陷入困境。 他完全忘记了教授的帐户也会过期,他不想在回复信息中向教授讲学生语言。 是时候解决这个问题: 编辑FreeRADIUS配置目录下modules子目录中的expiration文件。 更改以下行: #re
是否可以为我的多模块maven项目的每个模块生成单独的jar文件。我的项目结构 应用程序模块具有main()方法。模块1和模块2具有由UI使用的RESTendpoint。目前,当我在应用程序模块上运行mvn包时,我得到了一个大的胖jar,其中包含所有Spring Boot依赖项以及每个模块1和模块2的依赖项。 相反,我想为module1和module2创建一个单独的jar文件。这样当我在modul
一、简介 黄页模块的基本设置 二、基本设置 三、SEO设置 二、权限设置
SOFABoot 模块是一个普通的 Jar 包加上一些 SOFABoot 特有的配置,这些 SOFABoot 特有的配置,让一个 Jar 包能够被 SOFABoot 识别,使之具备模块化的能力。 一个完整的 SOFABoot 模块和一个普通的 Jar 包有两点区别: SOFABoot 模块包含一份 sofa-module.properties 文件,这份文件里面定义了 SOFABoot 模块的名称