从批处理文件执行mvn install时,等待表创建

时间:2017-08-16 14:59:21

标签: mysql hibernate maven batch-file jpa

我在本地有一个批量文件:

  1. 从原型
  2. 创建 Maven 项目
  3. 创建相关的 MySQL 数据库
  4. 安装项目(所以 JPA / Hibernate 创建表格)
  5. 使用 SQL文件INSERT语句)填充表格
  6. (简化)批处理文件:

    [...]
    
    echo ====== CREATE MAVEN PROJECT =======
    call mvn -X archetype:generate ...
    
    echo ====== CREATE DATABASE ============
    mysql -u%mysql_local_user% -p%mysql_local_password% -e "create database %dbName%"
    
    echo ====== INSTALL PROJECT ============
    call mvn clean install -Pmyconfig -DskipTests=true
    
    set /P ISDBREADY=Please make sure the table creation completed before continuing, is it OK (Y/N)?
    if /I "%ISDBREADY%" NEQ "Y" GOTO END
    
    echo ====== POPULATE DATABASE ==========
    mysql -h localhost -u%mysql_local_user% -p%mysql_local_password% --default-character-set=latin1 %dbName% < ../init_database.sql
    
    :END
    

    如您所见,目前我只是提示消息,以便我可以检查表是否存在,然后我可以继续并填充数据库。 如果我不等待,那么当执行INSERT语句并且我得到异常(未知表名... )时,表仍然不存在。

    有什么方法可以让我知道表格何时准备好并且可以填充?然后我可以摆脱提示或任何等待指示。

0 个答案:

没有答案