Jmix 启动更新数据库之后报错,请问怎么解决呢?
看错误是创建表 sec_role_assignment 失败,表已存在。你是从低版本升级了吗?
不是,我是直接使用的Jmix 0.3.2.
刚配置好数据库,启动时报这个错:
后面我添加了这张表,再启动就报上面那个错
怎么启动的应用?
用下图中绿的那个启动,不要用红的那个启动
就是用的这个:Jmix Application
哦。那作为暂时方案,这么着,在项目里面有个 010-init-user.xml
, 其中有insert 这个表的 changeset, (0.3.2 是一行?):
<changeSet id="4" author="jmixreports">
<insert tableName="SEC_ROLE_ASSIGNMENT" dbms="postgresql, mssql, hsqldb">
<column name="ID" value="6c9e420a-2b7a-4c42-8654-a9027ee14083"/>
<column name="VERSION" value="1"/>
<column name="USERNAME" value="admin"/>
<column name="ROLE_CODE" value="system-full-access"/>
<column name="ROLE_TYPE" value="resource"/>
</insert>
<insert tableName="SEC_ROLE_ASSIGNMENT" dbms="oracle, mysql, mariadb">
<column name="ID" value="6c9e420a2b7a4c428654a9027ee14083"/>
<column name="VERSION" value="1"/>
<column name="USERNAME" value="admin"/>
<column name="ROLE_CODE" value="system-full-access"/>
<column name="ROLE_TYPE" value="resource"/>
</insert>
</changeSet>
把整个 changeset 先注释掉,再启动。然后手动再表中插入这两行数据。