2014-01-13 74 views
3

我想通過以下方式使用的IntelliJ外項目結構。一個包含多個模塊(類似於Eclipse項目)的項目(類似於Eclipse工作區)。正如你所猜測的,我正在從更近期的Eclipse背景轉向IntelliJ。的IntelliJ和Perforce集成:客戶端規格問題,當使用客戶端規格根

我成立了一個名爲MainProject一個空的項目,該項目將出現在目錄結構:

  • C:\ IntelliJProjects \ MainProject

這正確包含了我 「.idea」 目錄。我希望這可以避免源代碼管理和C盤上的問題。

我加入兩個Java模塊,一個用於這個項目,我會在工作中的每個組件。這些都是在Perforce公司和P4客戶規範下有根

  • 五:\ dev的

(「V」是代碼必須住在一個網絡驅動器,但我不希望IntelliJ項目文件居住在那裏)。這兩個模塊有一個內容根

  • 五:\ dev的\ COMPONENT1 \幹線\ SRC
  • 五:\ dev的\ COMPONENT2 \幹線\ SRC

這一切工作正常。我已經標記爲問題上的模塊,SRC正確的內容,測試等

現在。當我嘗試建立Perforce公司項目的根是:

  • C:\ IntelliJProjects \ MainProject

,但客戶端規格根

  • 五:\ dev的

所以我得到以下錯誤,當我測試連接

<pre> 
Connection problems: </br> 
Wrong client specification: </br> 
Client roots: </br> 
    v:\dev </br> 
Actual root: </br> 
    C:\IntelliJProjects\MainProject </br> 
</pre> 

當使用Eclipse,Perforce公司從未考慮在何處Eclipse工作空間是如此同樣我沒想到的IntelliJ與項目文件的存儲位置有關。我可以看到很多情況下,你不希望這個項目或者確實下Perforce的模塊.iml文件,但代碼肯定會。

解決這個問題的唯一辦法就是讓客戶規範下的網絡驅動器上的項目文件,但因爲它是在項目層次上它無法正確地在兩種生活:

  • 五:\ dev的\ COMPONENT1
  • 五:\ dev的\ COMPONENT2

所以我想有一個項目下

  • 五: \ dev的

如果我改變的客戶端規格

我已經想通了,唯一的其他方式,也將打破的是我添加

  • 五:\ dev的

爲「版本控制」下的目錄,您可以在其中添加目錄

  • 沒有VCS
  • 五:\ dev的已VCS定義爲Perforce公司

這是唯一的途徑或任何人可以建議更好的方法?

回答

1

您的設置是正確的。如果將整個「項目」映射到Perforce VCS,IDEA會將您項目中的所有內容(包括.idea)都視爲Perforce,而這不是您想要的。

順便說一下,強烈建議將項目源保存在本地磁盤上,否則IDEA可能會遇到文件同步問題,或者可能會比它的功能慢。

3

我知道這是一個老問題,但我現在有同樣的問題,我設法解決它。

我有一個文件夾一個在的IntelliJ項目,而我的Perforce的工作區是在文件夾

在我的項目中,我有兩個模塊在項目文件夾內部和Perforce工作區內,並且當我將整個項目映射到Perforce時出現「錯誤的客戶端規範」錯誤。

所有我要做的就是去: 的IntelliJ項目首選項 - >版本控制 點擊+添加地圖我的整個Perforce的工作區目錄Perforce公司的VCS,如圖片: enter image description here