ANT 是否有可能在不导致构建失败的情况下检查数据库(连接)是否存在?
例如:
<target name="check-database-available">
<sql
classpath="${oracle.jar}" driver="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@${my.db.host}:${my.db.port}:${my.db.sid}"
userid="${my.db.user}"
password="${my.db.pw}"
onerror="continue" errorproperty="exit.status">
select * from dual;
</sql>
<echo message="### exit status = ${exit.status}" />
</target>
这总是会失败并显示 BUILD FAILED 和
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
因为数据库还不存在。将“onerror”设置为“继续”并检查“errorproperty”将不起作用,因为任务似乎没有执行。
从 Ant v 1.8.0 开始,您可以使用failOnConnectionError
SQL 任务的属性。
描述如下:
如果为 false,则如果任务无法连接到数据库,将仅打印警告消息,并且不执行任何语句。
看起来它可以解决你的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)