Câu hỏiMở cửa sổ Trình duyệt từ chương trình Java
Tôi có một ứng dụng được viết bằng Java. Nó được thiết kế để chạy trên một hộp Linux độc lập. Tôi đang cố gắng tạo ra một cửa sổ mới firefox. Tuy nhiên, firefox không bao giờ mở. Nó luôn có mã thoát shell 1. Tôi có thể chạy cùng mã này với gnome-terminal và nó mở ra tốt.
nền
Vì vậy, đây là quá trình của nó khởi tạo:
- Bắt đầu X "Xorg: 1 -br -terminate -dpms -quiet VT7"
- Bắt đầu Window Manager "metacity - -display =: 1 --replace "
- Định cấu hình tài nguyên" xrdb -merge/etc/X11/Xresources "
- Trở thành một daemon và ngắt kết nối khỏi kiểm soát t erminal
Khi chương trình đang hoạt động, có một nút mà người dùng có thể nhấp vào đó sẽ sinh ra một cửa sổ firefox. Đây là mã của tôi để làm điều đó. Hãy nhớ rằng X đang chạy trên màn hình: 1.
Mã
public boolean openBrowser()
{
try {
Process oProc = Runtime.getRuntime().exec("/usr/bin/firefox --display=:1");
int bExit = oProc.waitFor(); // This is always 1 for some reason
return true;
} catch (Exception e) {
oLogger.log(Level.WARNING, "Open Browser", e);
return false;
}
}
Tôi nghĩ có điều gì đó bị thiếu. – Patrick
Bạn nói đúng. Bằng cách nào đó tôi đã đăng nó trước khi tôi gõ xong. Nó nên ở đó đầy đủ. –