首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >H2 java应用程序不是启动而是在调试中工作

H2 java应用程序不是启动而是在调试中工作
EN

Stack Overflow用户
提问于 2015-07-02 13:35:24
回答 1查看 215关注 0票数 0

我的Java 8+ ControlsFX 2应用程序有这个问题。我使用的是无服务器的H2数据库,在eclipse运行/调试中一切正常,但是当我创建可运行的jar并启动它时,我得到以下消息

代码语言:javascript
运行
复制
2015-07-02 15:29:23,535|JavaFX Application Thread|ERROR|GestioneProdottiView.<init>() Errore creazione tabella
    org.eclipse.persistence.exceptions.PersistenceUnitLoadingException: 
    Exception Description: An exception was thrown while trying to load persistence unit at url: rsrc:../
    Internal Exception: Exception [EclipseLink-30004] (Eclipse Persistence Services - 2.6.0.v20150309-bf26070): org.eclipse.persistence.exceptions.PersistenceUnitLoadingException
    Exception Description: An exception was thrown while processing persistence.xml from URL: rsrc:../
    Internal Exception: java.net.MalformedURLException
        at org.eclipse.persistence.exceptions.PersistenceUnitLoadingException.exceptionLoadingFromUrl(PersistenceUnitLoadingException.java:100) ~[jar:rsrc:org.eclipse.persistence.core-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceArchive(PersistenceUnitProcessor.java:616) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.getPersistenceUnits(PersistenceUnitProcessor.java:500) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.JPAInitializer.findPersistenceUnitInfoInArchive(JPAInitializer.java:178) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.JPAInitializer.findPersistenceUnitInfoInArchives(JPAInitializer.java:160) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.JPAInitializer.findPersistenceUnitInfo(JPAInitializer.java:141) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.jpa.PersistenceProvider.createEntityManagerFactory(PersistenceProvider.java:183) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:63) ~[jar:rsrc:hibernate-jpa-2.0-api-1.0.1.Final.jar!/:?]
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:47) ~[jar:rsrc:hibernate-jpa-2.0-api-1.0.1.Final.jar!/:?]
        at com.cremonaufficio.appbarsangiorgio.backend.database.DaoBase.<init>(DaoBase.java:34) ~[rsrc:./:?]
        at com.cremonaufficio.appbarsangiorgio.frontend.prodotti.GestioneProdottiView.<init>(GestioneProdottiView.java:93) [rsrc:./:?]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_45]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) [?:1.8.0_45]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) [?:1.8.0_45]
        at java.lang.reflect.Constructor.newInstance(Unknown Source) [?:1.8.0_45]
        at java.lang.Class.newInstance(Unknown Source) [?:1.8.0_45]
        at sun.reflect.misc.ReflectUtil.newInstance(Unknown Source) [?:1.8.0_45]
        at javafx.fxml.FXMLLoader$InstanceDeclarationElement.constructValue(Unknown Source) [rsrc:./:?]
        at javafx.fxml.FXMLLoader$ValueElement.processStartElement(Unknown Source) [rsrc:./:?]
        at javafx.fxml.FXMLLoader.processStartElement(Unknown Source) [rsrc:./:?]
        at javafx.fxml.FXMLLoader.loadImpl(Unknown Source) [rsrc:./:?]
        at javafx.fxml.FXMLLoader.loadImpl(Unknown Source) [rsrc:./:?]
        at javafx.fxml.FXMLLoader.load(Unknown Source) [rsrc:./:?]
        at com.cremonaufficio.appbarsangiorgio.frontend.main.MainView.<init>(MainView.java:18) [rsrc:./:?]
        at com.cremonaufficio.appbarsangiorgio.ApplicationRoot.start(ApplicationRoot.java:60) [rsrc:./:?]
        at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$159(Unknown Source) [rsrc:./:?]
        at com.sun.javafx.application.LauncherImpl$$Lambda$52/1019606772.run(Unknown Source) [rsrc:./:?]
        at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$172(Unknown Source) [rsrc:./:?]
        at com.sun.javafx.application.PlatformImpl$$Lambda$48/672080502.run(Unknown Source) [rsrc:./:?]
        at com.sun.javafx.application.PlatformImpl.lambda$null$170(Unknown Source) [rsrc:./:?]
        at com.sun.javafx.application.PlatformImpl$$Lambda$50/1955345122.run(Unknown Source) [rsrc:./:?]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_45]
        at com.sun.javafx.application.PlatformImpl.lambda$runLater$171(Unknown Source) [rsrc:./:?]
        at com.sun.javafx.application.PlatformImpl$$Lambda$49/1936897764.run(Unknown Source) [rsrc:./:?]
        at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source) [rsrc:./:?]
        at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) ~[rsrc:./:?]
        at com.sun.glass.ui.win.WinApplication.lambda$null$145(Unknown Source) [rsrc:./:?]
        at com.sun.glass.ui.win.WinApplication$$Lambda$38/479808962.run(Unknown Source) [rsrc:./:?]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
    Caused by: org.eclipse.persistence.exceptions.PersistenceUnitLoadingException: 
    Exception Description: An exception was thrown while processing persistence.xml from URL: rsrc:../
    Internal Exception: java.net.MalformedURLException
        at org.eclipse.persistence.exceptions.PersistenceUnitLoadingException.exceptionProcessingPersistenceXML(PersistenceUnitLoadingException.java:118) ~[jar:rsrc:org.eclipse.persistence.core-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceXML(PersistenceUnitProcessor.java:657) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceArchive(PersistenceUnitProcessor.java:614) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        ... 37 more
    Caused by: java.net.MalformedURLException
        at java.net.URL.<init>(Unknown Source) ~[?:1.8.0_45]
        at java.net.URL.<init>(Unknown Source) ~[?:1.8.0_45]
        at java.net.URL.<init>(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) ~[?:1.8.0_45]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceXML(PersistenceUnitProcessor.java:655) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceArchive(PersistenceUnitProcessor.java:614) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        ... 37 more
    Caused by: java.lang.NullPointerException
        at java.net.URL.<init>(Unknown Source) ~[?:1.8.0_45]
        at java.net.URL.<init>(Unknown Source) ~[?:1.8.0_45]
        at java.net.URL.<init>(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) ~[?:1.8.0_45]
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) ~[?:1.8.0_45]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceXML(PersistenceUnitProcessor.java:655) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processPersistenceArchive(PersistenceUnitProcessor.java:614) ~[jar:rsrc:org.eclipse.persistence.jpa-2.6.0.jar!/:?]
        ... 37 more

我的持久性单元文件是

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="UTF-8"?>
<persistence 
    version="2.1" 
    xmlns="http://xmlns.jcp.org/xml/ns/persistence" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">

    <persistence-unit name="default" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>

        <class>com.cremonaufficio.appbarsangiorgio.backend.database.entity.ProdottoEntity</class>

        <properties>
            <property name="javax.persistence.jdbc.url" value="jdbc:h2:~/scanner/database/database" /><!-- ~/ -->
            <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" />
            <property name="javax.persistence.jdbc.user" value="app" />
            <property name="javax.persistence.jdbc.password" value="app1505" /> 
            <property name="eclipselink.logging.level" value="INFO" />
            <property name="eclipselink.ddl-generation" value="create-tables" />
        </properties>

    </persistence-unit>


</persistence>

我想问题在于url,但即使是./指向jar旁边的文件夹,它也不起作用。有什么猜测吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-02 15:40:22

我知道问题出在哪里。事实证明,这就是我生成JAR的方式:我不得不选择“提取所需的库”,而不仅仅是“包所需的库”。

干杯。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31186129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档