我正在构建一个Java应用程序,我打算只在Unix操作系统上使用它.
在应用程序中,我创建了一些子进程,ProcessBuilder并希望以本机方式与它们进行交互.所以我没有使用Process我提供的界面,而是想UNIXProcess在启动孩子之后将它们强制转换.
但是,在尝试使用Type时出现此错误.
import java.lang.UNIXProcess;
public class Main
{
public static void main(String args) throws Exception
{
ProcessBuilder bp = new ProcessBuilder("/bin/echo", "hello");
Process process = bp.start();
UNIXProcess unixProcess = (UNIXProcess) process;
}
}
Run Code Online (Sandbox Code Playgroud)
java.lang.UNIXProcess类型不可见
我不应该使用UNIX进程吗?
我在Eclipse for Java 1.7中看到了这个错误,如果这很重要的话.
UNIXProcess未声明public:
final class UNIXProcess extends Process
Run Code Online (Sandbox Code Playgroud)
这意味着它只能从java.lang包中看到.Java禁止您在该包之外使用它.