gpt4 book ai didi

java - Spring Boot 项目作为可执行 jar 运行时找不到 Hibernate.cfg.xml

转载 作者:太空宇宙 更新时间:2023-11-04 10:17:14 27 4
gpt4 key购买 nike

我发现在设置 SessionFactory 时未找到 hibernate.cfg.xml 的问题是很常见的情况,但我的问题有些具体。我的项目在 Eclipse 中运行时工作正常,即使我移动 hibernate.cfg.xml 也是如此;我可以将其保留在源代码级别并执行以下操作:

        Configuration configuration = new Configuration();
configuration = new Configuration();
configuration.configure();

或者我可以将其移动到不同的位置并以这种方式定义它:

        Configuration configuration = new Configuration();
configuration = new Configuration();
configuration.configure("/path/to/hibernate.cfg.xml");

这两种方法都可以在 Eclipse 中使用。但是,当我构建一个可执行 jar 来在其他地方运行该应用程序时,它启动时会提示:

Initial SessionFactory creation 
failed.org.hibernate.internal.util.config.ConfigurationException: Could not
locate cfg.xml resource [hibernate.cfg.xml]
org.hibernate.internal.util.config.ConfigurationException: Could not locate
cfg.xml resource [hibernate.cfg.xml]

我明白(或者我认为我明白),原因是 hibernate.cfg.xml 没有包含在 jar 本身中,所以即使定义了路径,它也找不到它,但不确定如何修复它。我想如果我可以将文件放入 jar 中,那么它可能会起作用(也许类路径也需要一个条目?),但我实际上不确定该怎么做。

最佳答案

这主要取决于您是否使用框架,如果是,则使用哪个框架。如果您没有使用任何框架,那么将 hibernate.cfg.xml 文件保留在根路径中就可以了。但是由于标准化编码过程的迫切需要,框架通常期望该文件位于您的资源文件夹中。但在您的情况下,您应该提供该配置文件的路径,而不是相对于根文件夹,而是相对于整个路径。

关于java - Spring Boot 项目作为可执行 jar 运行时找不到 Hibernate.cfg.xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51562929/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com