第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

讓 javaFX 11 應(yīng)用程序在 docker 上運行

讓 javaFX 11 應(yīng)用程序在 docker 上運行

喵喵時光機(jī) 2023-03-23 13:42:16
我正在嘗試讓一個在我的機(jī)器上完美運行的應(yīng)用程序在 docker 上運行,這是我的 docker 文件:FROM openjdk:11-jre-slimVOLUME /tmpADD someJar.jar someJar.jarADD lib libADD config.properties config.propertiesENTRYPOINT ["java", "-javaagent:lib/aspectjweaver-1.9.2.jar",     "-javaagent:lib/spring-instrument-5.1.6.RELEASE.jar", "--module-path",     "lib/javafx-sdk-11.0.2", "--add-modules=javafx.controls", "-     Dprism.verbose=true", "-jar","someJar.jar"]我還嘗試將其基于 alpine openjdk11 版本,結(jié)果相同:FROM adoptopenjdk/openjdk11:alpineVOLUME /tmpRUN apk update && apk add libx11 mesa-gl gtk+3.0 && apk updateADD someJar.jar someJar.jarADD lib libADD config.properties config.propertiesENTRYPOINT ["java", "-javaagent:lib/aspectjweaver-1.9.2.jar", "-javaagent:lib/spring-instrument-5.1.6.RELEASE.jar", "--module-path", "lib", "--add-modules=javafx.controls", "-Dprism.verbose=true", "-jar","someJar.jar"]lib 文件夾包含 openJFX 運行時的 linux 風(fēng)格(.so 文件和 .jar 文件)。我正在使用 openJDK 運行時的 Windows 等價物在 Windows 機(jī)器上開發(fā)它,它運行良好。運行容器時,我得到以下輸出知道如何讓基于 OpenJFX11 的 Java 應(yīng)用程序在 Docker 中工作嗎?
查看完整描述

1 回答

?
天涯盡頭無女友

TA貢獻(xiàn)1831條經(jīng)驗 獲得超9個贊

我終于讓這個工作了!我必須在我的 Windows 主機(jī)上安裝 VcXsrv 并將其添加到 docker run 命令中:


-e DISPLAY=MY IP ADDRESS:0.0

我的應(yīng)用程序現(xiàn)在可以正常啟動并在實際開始 Spring 初始化之前輸出以下內(nèi)容:


Prism pipeline init order: es2 sw

Using Double Precision Marlin Rasterizer

Using dirty region optimizations

Not using texture mask for primitives

Not forcing power of 2 sizes for textures

Using hardware CLAMP_TO_ZERO mode

Opting in for HiDPI pixel scaling

Prism pipeline name = com.sun.prism.es2.ES2Pipeline

Loading ES2 native library ... prism_es2

    succeeded.

GLFactory using com.sun.prism.es2.X11GLFactory

MESA-LOADER: failed to open swrast (search paths /usr/lib/xorg/modules/dri)

libGL error: failed to load driver: swrast

Prism-ES2 Error : GL_VERSION (major.minor) = 1.4

(X) Got class = class com.sun.prism.es2.ES2Pipeline

GraphicsPipeline.createPipeline: error initializing pipeline com.sun.prism.es2.ES2Pipeline

*** Fallback to Prism SW pipeline

Prism pipeline name = com.sun.prism.sw.SWPipeline

(X) Got class = class com.sun.prism.sw.SWPipeline

Initialized prism pipeline: com.sun.prism.sw.SWPipeline

MESA-LOADER: failed to open swrast (search paths /usr/lib/xorg/modules/dri)

libGL error: failed to load driver: swrast

vsync: true vpipe: false 

仍然有一些錯誤我會嘗試解決,但它實際上現(xiàn)在開始了!


根據(jù)要求提供完整的 dockerfile,我仍在解決導(dǎo)致它回退到 prism 管道的錯誤,稍后將更新:


FROM adoptopenjdk/openjdk11:alpine

VOLUME /tmp

RUN apk update && apk add libx11 mesa-gl gtk+3.0 mesa-dri-swrast mesa-demos 

    && apk update

ADD someJar.jar someJar.jar

ADD lib lib

ADD config.properties config.properties

ENTRYPOINT ["java", "-javaagent:lib/aspectjweaver-1.9.2.jar", "-javaagent:lib/spring-instrument-5.1.6.RELEASE.jar", "--module-path", "lib", "--add-modules=javafx.controls", "-Dprism.verbose=true", "-Djava.awt.headless=true", "-jar","someJar.jar"]

******最終設(shè)置******


我深入研究了 libGL 錯誤,讓 ES2 管道工作的麻煩對于我的需要來說甚至不值得。這將涉及與 Nvidia 和 CUDA 驅(qū)動程序的混亂,并且完全沒有用,因為我的應(yīng)用程序無論如何只是一個后臺服務(wù)。這是使一切正常的最終設(shè)置:


Dockerfile(切換回 openjdk 以與我的其他應(yīng)用程序保持一致,并找出要安裝的最低限度的包)


FROM openjdk:11-jre-slim

RUN apt-get update && apt-get install libgtk-3-0 libglu1-mesa -y && apt-get update

VOLUME /tmp

ADD someJar.jar someJar.jar

ADD lib lib

ADD config.properties config.properties

ENTRYPOINT ["java", "-javaagent:lib/aspectjweaver-1.9.2.jar", "-javaagent:lib/spring-instrument-5.1.6.RELEASE.jar", "--module-path", "lib/javafx-sdk-11.0.2", "-jar", "someJar.jar"]

Docker構(gòu)建命令


docker build -f Dockerfile -t some_service .

Docker 運行命令


docker run -t --name Some_Service -e DISPLAY=MY IP:0.0 -e SOME_VARIABLE= --link mySQLSRV:mysql some_service

希望這對某人有幫助,這花了我?guī)滋斓臅r間才開始工作!


查看完整回答
反對 回復(fù) 2023-03-23
  • 1 回答
  • 0 關(guān)注
  • 239 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號