启动 Moqui 时出现一些错误

问题描述 投票:0回答:2

我是 Moqui 新手。我用这些命令启动 moqui:

$ git clone https://github.com/moqui/moqui-framework.git moqui
$ cd moqui
$ ./gradlew getComponent -Pcomponent=PopCommerce
$ ./gradlew getComponent -Pcomponent=HiveMind
$ ./gradlew downloadElasticSearch
$ ./gradlew load

我有一些问题:

20:33:03.043 ERROR main .moqui.i.e.EntityDatasourceFactoryImpl Error connecting to DataSource transactional (postgres), try 4 of 5: java.lang.ExceptionInInitializerError: Exception bitronix.tm.internal.BitronixRuntimeException: error initializing JdbcProxyFactory [in thread "main"]

20:32:52.683  WARN c-jmx-worker b.tm.u.ManagementRegistrar Cannot execute ManagementRegisterCommand on object with name bitronix.tm:type=JDBC,UniqueName=transactional_DS,Id=4

20:32:36.567 ERROR  main .moqui.i.e.EntityDatasourceFactoryImpl Error connecting to DataSource transactional (postgres), try 1 of 5: java.lang.reflect.InaccessibleObjectException: 
Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @56620197

这是我的文件 MoquiDefaultConf.xml:

<default-property name="instance_purpose" value="production"/>

<!-- Locale and Time Zone Properties -->
<default-property name="default_locale" value="en_US"/>
<default-property name="default_time_zone" value="US/Pacific"/>
<default-property name="database_time_zone" value="US/Pacific"/>

<!-- Web App Properties -->
<default-property name="webapp_http_host" value=""/>
<default-property name="webapp_http_port" value=""/>
<default-property name="webapp_https_port" value=""/>
<default-property name="webapp_https_enabled" value="false"/>
<default-property name="webapp_allow_origins" value=""/>
<default-property name="webapp_handle_cors" value="true"/>
<default-property name="webapp_status_ips" value="127.0.0.1"/>
<default-property name="webapp_require_session_token" value="true"/>
<default-property name="webapp_upload_executable_allow" value="false"/>
<default-property name="webapp_client_ip_header" value=""/>

<!-- Properties for the primary (transactional group) datasource -->
<default-property name="entity_ds_db_conf" value="postgres"/>
<default-property name="entity_ds_host" value="127.0.0.1"/>
<default-property name="entity_ds_port" value="5432"/>
<default-property name="entity_ds_database" value="h2"/>
<default-property name="entity_ds_url" value="jdbc:h2:${moqui_runtime}/db/h2/${entity_ds_database};lock_timeout=30000"/>
<default-property name="entity_ds_schema" value=""/>
<default-property name="entity_ds_user" value="postgres"/>
<default-property name="entity_ds_password" value="trunghung0804"/>
<default-property name="entity_ds_crypt_pass" value="MoquiDefaultPassword:CHANGEME"/>
<default-property name="entity_ds_crypt_pass_old" value="MoquiDefaultPassword:CHANGEME"/>
<default-property name="entity_add_missing_runtime" value="false"/>
<default-property name="entity_add_missing_startup" value="true"/>
<default-property name="entity_lock_track" value="false"/>
<default-property name="entity_statement_timeout" value="false"/>
<default-property name="entity_empty_db_load" value="seed,seed-initial,install"/>

以及 MoquiDefaultConf.xml 中我的数据源配置:

<datasource group-name="transactional" database-conf-name="${entity_ds_db_conf}" schema-name="${entity_ds_schema}"
        runtime-add-missing="${entity_add_missing_runtime}" startup-add-missing="${entity_add_missing_startup}">
    <!-- by default no inline-jdbc or jndi-jdbc elements, use default from database conf -->
</datasource>
<datasource group-name="transactional" database-conf-name="postgres" schema-name="">
    <inline-jdbc pool-minsize="5" pool-maxsize="50">
        <xa-properties user="postgres" password="trunghung0804" pinGlobalTxToPhysicalConnection="true"
                       serverName="127.0.0.1" port="5432" databaseName="moqui" autoReconnectForPools="true"
                       useUnicode="true" encoding="UTF-8"/>
    </inline-jdbc>
</datasource>

这是我连接到的数据库: enter image description here

java postgresql moqui
2个回答
0
投票

您的连接配置错误,请使用此配置

<datasource group-name="transactional" database-conf-name="postgres" schema-name="public" startup-add-missing="true" runtime-add-missing="false">
        <inline-jdbc jdbc-uri="jdbc:postgresql://localhost/moqui" jdbc-username="dbUsername" jdbc-password="dbPassword"/>

将 moqui 替换为你的数据库名称,

将 dbUsername 替换为您的数据库用户名,

将 dbPassword 替换为您的数据库密码


0
投票

正如评论中提到的,我的新鲜本地moqui(v3.1.0-rc2)中的错误通过使用java jdk11修复。它默认使用 H2,而不是 postgresql。

© www.soinside.com 2019 - 2024. All rights reserved.