2014-01-24 59 views
6

之前我已經導入了這個項目,沒有任何困難。我不確定發生了什麼變化。爲什麼我會收到「無法解析符號」?

我點擊Import Project並選擇getting-started-with-seleniumhttp://github.com/ddavison/getting-started-with-selenium)這是一個Maven項目和一箇舊的Eclipse項目。我點擊目錄,然後在「選擇圖書館」或其他,我選擇Maven

我已經改變了我的構建路徑正確匹配...

src/ 
    main/ 
    java/ <-- source folder. 

    tests/ 
    java/ <-- tests folder. 

不過不失,我得到"Cannot resolve symbol 'After'"即使在Maven庫,我看清楚了。 enter image description here

讓我知道是否有任何額外的信息需要。

+3

我們可以看到你的POM嗎?我的第一個猜測是,你將junit作用於'test',但意外地把'AutomationTest'放在'src/main'中。 –

+0

這就是它馬克...我有'測試'繼續並將其標記爲答案。 – sircapsalot

+0

[This](https://www.jetbrains.com/idea/help/configuring-testing-libraries.html)爲我解決了這個問題。另請參見[this。](http://stackoverflow.com/a/4757951/183704) –

回答

9

確保如果JUnit聲明爲<scope>test</scope>,那麼您的測試類在src/test中,否則它將無法看到依賴關係。

+0

不相關的,但如果您熟悉intellij(我最近剛剛嘗試過它),那麼您是否可以提供一些有關我爲什麼甚至不得不添加junit依賴?如果你看看http://github.com/ddavison/getting-started-with-selenium/tree/master/pom.xml,你可以看到我甚至沒有junit作爲dep。但是,Intellij之前沒有問題..我的猜測是我沒有正確導入項目..也許我應該下次爲Eclipse項目導入'.project',然後手動添加Maven支持? – sircapsalot

+2

@sircapsalot:由於IntelliJ內置了對JUnit的支持,它可能會自動將JUnit添加爲非Maven模塊依賴項,而忽略您的pom.xml。例如,我在pom.xml中有一個沒有JUnit的Maven項目。我通過IntelliJ創建了一個新的JUnit4測試。 '@ Test'標記一個錯誤,所以我使用Alt-Enter。第一個自動修復建議是「將junit.jar添加到類路徑」(而不是通過Maven)。稍後的自動修復建議是「添加Maven依賴項」,它實際上會更改pom.xml。如果您選擇前者,那麼在通過Maven構建時,測試類將不會編譯。 –

5

確保您可以通過Maven(即通過命令行)通過mvn clean compile編譯項目。

如果這樣會產生錯誤,請確保您在POM中具有正確範圍的junit依賴項。

如果這不會產生錯誤,那麼IntelliJ不知道新庫在哪裏。

要解決該問題,只需轉到主窗口中的Maven項目選項卡,然後點擊「爲所有項目生成源和更新文件夾」按鈕。然後,點擊上一個按鈕旁邊的「重新導入所有Maven項目」。

相關問題