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

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

Maven surefire 找不到 ForkedBooter 類

Maven surefire 找不到 ForkedBooter 類

哈士奇WWW 2021-12-10 10:49:21
最近來到一個新項目,我正在嘗試編譯我們的源代碼。昨天一切正常,但今天是另一回事。每次我mvn clean install在一個模塊上運行時,一旦到達測試,它就會崩潰:[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ recorder ---[INFO] Surefire report directory: /lhome/code/recorder/target/surefire-reports[INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider[INFO] parallel='none', perCoreThreadCount=true, threadCount=0, useUnlimitedThreads=false, threadCountSuites=0,     threadCountClasses=0, threadCountMethods=0, parallelOptimized=true------------------------------------------------------- T E S T S-------------------------------------------------------Error: Could not find or load main class org.apache.maven.surefire.booter.ForkedBooterResults :Tests run: 0, Failures: 0, Errors: 0, Skipped: 0后來:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project recorder: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?我在Debian 9 (Stretch) 64 位和 OpenJDK 1.8.0_181、Maven 3.5.4 上運行,在我在~/.m2/settings.xml.奇怪的是,如果我沒記錯的話,最新的 Surefire 版本是 2.22.1。我試圖指定插件版本,但它沒有更新,否則任何POM(父、祖父或這個)中都沒有插件版本規(guī)范。
查看完整描述

3 回答

?
慕碼人2483693

TA貢獻1860條經(jīng)驗 獲得超9個贊

要修復(fù)它(2018 年),請將您的 openjdk 更新到最新版本,至少為 8u191-b12。如果這個問題在 2020 年再次出現(xiàn),很可能是 openjdk 的默認行為發(fā)生了變化,然后您需要更新 maven surefire 插件。

這是您剛剛升級到的 openjdk-8 包中的一個現(xiàn)已修復(fù)的 錯誤(行為明顯偏離上游而無需;缺少上游補丁以恢復(fù)禁用安全檢查)。但它也是surefire插件中的一個錯誤, SUREFIRE-1588,據(jù)說在surefire 3.0.0-M1中修復(fù):它顯然在Java將來只允許相對路徑名的地方使用絕對路徑(并且Debian激活了未來的行為已經(jīng))。

軟件包版本 8u181-b13-2 說明:

  • 應(yīng)用 8u191-b12 安全更新中的補丁。

請注意,191-b12 != 181-b13。191-b12 安全補丁幾天前剛剛發(fā)布,顯然維護人員希望盡快將它們提供給您。完全更新到 191-b12 可能需要額外的測試(好吧,顯然應(yīng)該有這個上傳)。

有幾種解決方法:

  1. 您可以從 snapshots.do安裝以前的包 。降級后,您可以apt使用sudo aptitude forbid-version openjdk-8-jre-headless. 對于常規(guī)的“apt”,我沒有看到類似的禁止機制,因此您可能需要使用 apt pinning 來防止重新安裝此升級(或者您只是繼續(xù)降級,我希望這會很快得到解決)。

  2. 根據(jù)錯誤跟蹤,-Djdk.net.URLClassPath.disableClassPathURLCheck=true使用任何常用方法(例如,JAVA_FLAGS)設(shè)置屬性也應(yīng)該有所幫助。但我自己沒有驗證過。顯然,您甚至可以添加變通方法以~/.m2/settings.xml輕松地為所有 Maven 構(gòu)建啟用它。

如您所見,錯誤跟蹤有效,問題已縮小,并且有一個固定包可用,新版本的surefire 插件即將推出!


查看完整回答
反對 回復(fù) 2021-12-10
?
有只小跳蛙

TA貢獻1824條經(jīng)驗 獲得超8個贊

將 useSystemClassloader 設(shè)置為 false:


<plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-surefire-plugin</artifactId>

    <configuration>

        <useSystemClassLoader>false</useSystemClassLoader>

    </configuration>

</plugin>

如果您不是從為您定義了版本的父級(例如 Spring Boot starter)繼承,您還需要定義它。


查看完整回答
反對 回復(fù) 2021-12-10
?
慕萊塢森

TA貢獻1810條經(jīng)驗 獲得超4個贊

我有另一種解決方法。設(shè)置環(huán)境變量_JAVA_OPTIONS。我已經(jīng)將它用于我們的 TeamCity 構(gòu)建代理,現(xiàn)在我們的構(gòu)建運行良好。

_JAVA_OPTIONS=-Djdk.net.URLClassPath.disableClassPathURLCheck=true


查看完整回答
反對 回復(fù) 2021-12-10
  • 3 回答
  • 0 關(guān)注
  • 189 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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