SpringBoot啓動後啓動內嵌瀏覽器

1、下載內嵌瀏覽器Jar包

下載地址:點擊下載

2、項目下加入對應jar;然後右鍵:Add as Library...

 3、添加啓動項目後事件

效果:內嵌瀏覽器打開指定頁面,全屏

import com.teamdev.jxbrowser.chromium.Browser;
import com.teamdev.jxbrowser.chromium.swing.BrowserView;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;

import javax.swing.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

/**
 * @author 魯達
 * createTime 2019-12-29 20:51
 **/
@Component
public class ApplicationRunnerImpl implements ApplicationRunner {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        String url = "http://localhost:9028/open/index";
        JFrame frame = new JFrame();
        // 谷歌內核瀏覽器
        Browser browser = new Browser();
        BrowserView view = new BrowserView(browser);
        //禁用close功能
//        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //隱藏任務欄圖標
//        frame.setType(JFrame.Type.UTILITY);
//        //不顯示標題欄,最大化,最小化,退出按鈕
        frame.setUndecorated(true);
        //尺寸
//        frame.setSize(500, 500);
        //座標
        frame.setLocation(0, 0);
        frame.add(view);
        //全屏顯示
        frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
        // 是否顯示
        frame.setVisible(true);
        //是否在屏幕最上層顯示
        frame.setAlwaysOnTop(true);
        //加載地址
        browser.loadURL(url);
//        System.out.println(frame.getX());
//        System.out.println(frame.getY());
//        list.add(frame);
        frame.addWindowListener(new WindowAdapter() {
            // 窗口關閉時間監聽
            @Override
            public void windowClosing(WindowEvent e){
                System.out.println("窗口關閉...");
            }
        });
    }
}

4、然後在ide 的run--->VM Options里加上一句-Djava.awt.headless=false

解決問題:java.awt.HeadlessException運行時異常

 5、pom.xml文件添加依賴

解決問題:打包找不到依賴的問題

<!--內嵌瀏覽器-->
        <dependency>
            <groupId>jxbrowser-6.14</groupId>
            <artifactId>jxbrowser-6.14</artifactId>
            <version>6.14</version>
            <scope>system</scope>
            <systemPath>${project.basedir}\src\main\resources\lib\jxbrowser-6.14.jar</systemPath>
        </dependency>
        <dependency>
            <groupId>jxbrowser-win32-6.14</groupId>
            <artifactId>jxbrowser-win32-6.14</artifactId>
            <version>6.14</version>
            <scope>system</scope>
            <systemPath>${project.basedir}\src\main\resources\lib\jxbrowser-win32-6.14.jar</systemPath>
        </dependency>
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
            </plugin>
        </plugins>
    </build>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章