将ANT sqlplus执行从MacOSX迁移到Windows,获取TNS错误

问题描述:

我有一个可以执行sqlplus的ANT build.xml来编译PL/SQL。我在MacOSX上开发。我的同事将开始贡献相同的应用程序。他在WinXP上开发。来自ANT的sqlplus exec会在WinXP上返回TNS ORA-12560错误。相同的build.xml在MacOSX上工作。 ANT应该在WinXP上构建的运行字符串在DOS shell中运行。我们已经在WinXP中设置了TNS_ADMIN环境变量。我可能会错过什么?将ANT sqlplus执行从MacOSX迁移到Windows,获取TNS错误

从描述中我不确定您是使用ANT SQL任务(http://ant.apache.org/manual/Tasks/sql.html)还是使用exec任务请致电 Sqlplus。你能澄清一下吗?

如果你的sqlplus调用作为一个外部命令,你会在两个主要的事情摆布: 一)环境变量 B)tnsnames.ora文件

Windows和Unix是如何不同,他们处理指定您想要连接的位置。在OSX中,您将设置ORACLE_HOME和ORACLE_SID环境变量。在Windows中,这将在注册表中。您可能还有TNS_ADMIN设置,它决定了您的tnsnames.ora文件的位置。

首先要检查的是,如果你都使用相同的tnsnames.ora文件。

如果你是,让你们两个都试着运行tnsping来验证别名配置是否正确。

回到我们这些测试的结果。