2010-12-13 48 views
0

我用Tortoise SVN從http://code.google.com/p/osmdroid/source/checkout檢出代碼,然後將其添加爲osmdroid-android-1.08.jar的Java源代碼附件。現在當我嘗試通過源代碼時,我發現調試器跳到了錯誤的行。事實證明,我的.java文件在其中有額外的換行符。就好像我在Eclipse中使用了ctrl-shift-f。 SVN說我的工作副本沒有區別,但是當我在谷歌代碼上在線瀏覽源代碼時,那些換行符不在那裏。與在google代碼上瀏覽源代碼相比,爲什麼我從Google代碼簽出的源文件中有額外的換行符?

我該如何解決這個問題?或者我做錯了什麼?

回答

0

換行符在Unix/Linux和Windows上的解釋不同。

SVN diff忽略換行符,因此它看不到更改,但是您的IDE可能使用標準的OS解釋。您應該可以在項目屬性或偏好設置中對其進行更改(我不完全確定,因爲我目前不使用eclipse)

0

可能是different newlines \ n(linux)和\ r \ n(窗戶)?

But to alter your eclipse settings VonC has put it much better (check related SO answer here).

編輯:

被盜從VonC:

注:以現有文件的行結束符轉換,在Eclipse中打開該文件,然後選擇文件:轉換線分隔符爲:Unix

提示:你可以很容易地轉換現有的文件,然後在包資源管理器中選擇,然後去菜單條目File : Convert Line Delimiters to : Unix

+0

好吧,我遵循這個答案。將文本文件編碼更改爲UTF-8並將線路分隔符更改爲UNIX。換行符仍然存在。我刪除了源文件並再次檢出。還在那兒。 Notepad ++也顯示換行符。 – boston 2010-12-13 11:30:18

+0

@波士頓更新了有關部分有關*更改現有文件換行符的答案。從你的評論中,我會說你正在改變新文件而不是CURRENT文件的行爲。 – Frankie 2010-12-13 11:49:27

+0

@Frankie。我也是這樣做的。 Linebreaks stay :( – boston 2010-12-13 13:46:16

相關問題