我不太確定為什么會發生這種情況,因為它沒有發生在我的另一個專案中,設定幾乎相同。我正在使用 Maven 處理一個 Java 專案,并希望在將代碼推送到GitHub時運行我的測驗套件。我可以做一個mvn compile test -Dtest=InterpreterTester,它會在本地正常作業。但是,如果我將代碼推送到 GitHub,構建測驗會失敗并出現一堆cannot find symbol錯誤,package x does not exist.而且這不會在本地發生,而且我在以前的專案中使用了類似的設定(實際上,.yml 檔案是逐字復制,.pom 檔案僅在 ANTLR 版本中有所不同)。誰能看到可能出了什么問題?
maven.yml 檔案:
name: tests
on: push
jobs:
run_tests:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2
- name: Set up JDK 14
uses: actions/setup-java@v1
with:
java-version: 14
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Run tests with Maven
run: mvn compile test -Dtest=InterpreterTester
uj5u.com熱心網友回復:
我自己修復了它 - 事實證明,對于 ANTLR 和 Maven,該.g4檔案必須位于與專案其余部分具有相同“名稱”的包中。例如,我的.g4檔案在里面src/main/antlr4/mygrammar.g4,而它應該在里面,src/main/antlr4/com/myproject/mygrammar.g4因為專案結構的其余部分是src/main/java/com/myproject/....
反過來,這允許 Maven 識別語法位置并生成帶有mvn clean compile.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/401731.html
標籤:爪哇 行家 雅姆 github-actions 蚂蚁
