当前位置: 技术问答>linux和unix
ubuntu系统中运行java程序调用oracle 的sqlplus,为什么找不到sqlplus呢?在线等
来源: 互联网 发布时间:2016-07-03
本文导语: ubuntu系统中运行java程序调用oracle 的sqlplus,为什么找不到sqlplus呢?这个是我的代码: Runtime.getRuntime().exec("sqlplus aaa/aaa@tmp @/home/oracle/database.sql"); 报错如下: java.io.IOException: Cannot run program "sqlplus": java.io.IOExceptio...
ubuntu系统中运行java程序调用oracle 的sqlplus,为什么找不到sqlplus呢?这个是我的代码:
Runtime.getRuntime().exec("sqlplus aaa/aaa@tmp @/home/oracle/database.sql");
报错如下:
java.io.IOException: Cannot run program "sqlplus": java.io.IOException: error=2, No such file or directory
为了避免误会我特别测试了一下,这和后面/home/oracle/database.sql的路径和文件权限没有任何关系,
原因在于找不到sqlplus,后来我又测试了一下,用sqlplus的绝对路径/opt/oracle/bin/sqlplus确实可以成功
执行,(说明一下我在终端中用oracle用户可以执行sqlplus,只是在程序里才必须要用绝对路径)请问这个
是什么地方的原因呢?我该怎么改?
这个问题困扰我几天了,痛苦阿!
Runtime.getRuntime().exec("sqlplus aaa/aaa@tmp @/home/oracle/database.sql");
报错如下:
java.io.IOException: Cannot run program "sqlplus": java.io.IOException: error=2, No such file or directory
为了避免误会我特别测试了一下,这和后面/home/oracle/database.sql的路径和文件权限没有任何关系,
原因在于找不到sqlplus,后来我又测试了一下,用sqlplus的绝对路径/opt/oracle/bin/sqlplus确实可以成功
执行,(说明一下我在终端中用oracle用户可以执行sqlplus,只是在程序里才必须要用绝对路径)请问这个
是什么地方的原因呢?我该怎么改?
这个问题困扰我几天了,痛苦阿!
|
没有把sqlbus的路径加到环境变量中,看看它的变量名是什么,然后添加到环境变量试试