将ANT sqlplus执行从MacOSX迁移到Windows,导致TNS错误

我有一个工作的ANT build.xml,它执行sqlplus来编译PL / SQL。我在MacOSX上开发。我的同事将开始为同一个应用程序做出贡献。他在WinXP上发展。来自ANT的sqlplus exec在WinXP上返回TNS ORA-12560错误。相同的build.xml适用于MacOSX。 ANT应该在WinXP上构建的运行字符串在DOS shell中运行。我们在WinXP中设置了TNS_ADMIN环境变量。我能错过什么?     
已邀请:
我不确定您的描述是否正在使用ANT SQL任务(http://ant.apache.org/manual/Tasks/sql.html)或者您是否使用exec任务来调用Sqlplus。你能澄清一下吗? 如果您将sqlplus作为外部命令调用,那么您将受到两个主要因素的支配: a)环境变量 b)tnsnames.ora文件 Windows和unix在处理指定连接位置的方式上有所不同。在OSX中,您将设置ORACLE_HOME和ORACLE_SID环境变量。在Windows中,这将在注册表中。您可能还有TNS_ADMIN设置,用于确定将找到tnsnames.ora文件的位置。 首先要检查的是你是否都使用相同的tnsnames.ora文件。 如果是,请让你们两个都尝试运行tnsping来验证是否正确配置了别名。 通过这些测试的结果回复我们。     

要回复问题请先登录注册