2012-09-27 64 views
3

我在運行JDK 7的OSX Mountain Lion上安裝Netbeans。一切正常。然後我的機器無緣無故地墜毀。在此之後,我無法再開放Netbeans了。Netbeans 7.2不會在OS X上打開

如果我嘗試從命令行啓動NetBeans:

/Applications/NetBeans/NetBeans 7.2.app/Contents/MacOS/netbeans 

然後正常工作。從那裏,我可以選擇的Netbeans>關於和確認我的用戶目錄和cachedir是:

User directory: /Users/<user>/Library/Application Support/NetBeans/7.2 
Cache directory: /Users/<user>/Library/Caches/NetBeans/7.2 

所以,我刪除這些目錄,並再次嘗試,但很可惜,我只能通過命令行啓動NetBeans。

想法表示讚賞...

+0

我確定Netbeans的輸出錯誤日誌,我會檢查那裏第一次。 – user1329572

+0

刪除NetBeans的緩存幫助我在過去使用NetBeans borks。您可以在_.netbeans_目錄的_var_文件夾中找到緩存。我的_.netbeans_文件夾位於我的主目錄中。 – jahroy

+0

奇怪的是,如果我拖累了NetBeans可執行文件的快捷方式(/應用/的NetBeans /的NetBeans \ 7.2.app/Contents/MacOS/netbeans)到被告席上,我可以運行「執行」圖標。它打開一個終端窗口,運行命令,並打開Netbeans就好! – Spider

回答

1

這裏有一個想法:使用Eclipse> =)

..但嚴重的是,一些得到了在NetBeans的元數據/緩存數據文件損壞。你清除了其中的一些,但其他地方可能有其他人。

嘗試將快捷方式中的啓動命令與您在控制檯中鍵入的內容進行比較。他們是一樣的嗎?

+0

絕妙的想法(比較發射命令)。怎麼樣? – Spider

+1

我不是一個蘋果的人,但在KDE甚至Windoze你可以右鍵點擊該快捷方式,進入屬性(或任何它被稱爲),看看該命令。例如:http://i47.tinypic.com/5ygo79.png – kwikness

1

要找到問題的根源,我會請查閱NetBeans日誌,詳細的here

/用戶/提供yourname /庫/ Application Support/NetBeans的/ 7.2 /無功/日誌/ messages.log


而且如果這樣做沒有幫助,我將項目歸檔(S),並把一個乾淨的安裝在計算機上的NetBeans,然後導入歸檔的項目(s)轉換成的NetBeans。

+0

已經選中。沒有任何通過「圖標」版本進行記錄。命令行版本按預期記錄。 – Spider

+0

@MarkvanWyk,發佈細節甚至沒有被記錄?而通過「圖標」版本,你的意思是通過快捷方式啓動NetBeans?如果是這樣,我會檢查它是否調用與命令行相同的可執行文件 – user1329572

+0

是的,啓動詳細信息不記錄。是的,我的意思是應用程序存檔「/ Applications/Netbeans \ 7.2.app」不能被點擊。 – Spider

3

這樣的聲音對我來說不是一個NetBeans問題,而是一個捆綁包的問題,​​因此OS X不會像應該那樣啓動應用程序。

爲了驗證,我想嘗試通過搜索命令行開放的NetBeans

open -a "NetBeans 7.2.app"

這個命令會要求系統啓動程序,打開應用程序,如果你已經點擊的圖標。在你的情況下,它可能不會打開。如果這是真的,那麼你知道這不是在你的終端環境這是允許NetBeans啓動。

我將採取的下一步將看包的內容:檢查/Applications/NetBeans/NetBeans 7.2.app/Contents/Info.plist的任何看起來不對勁 - 這個文件是信息存儲,OS X尋找如何啓動包,它的圖標是,等等... - 特別是,我認爲你應該看看CFBundleExecutable的值,看看用什麼命令啓動應用程序。如果它不是netbeans,那麼你會發現一個關於什麼可能是錯誤的重要提示:捆綁包已設置好,以便發射器運行bundle_dir.app/Contents/{platform}/{CFBundleExecutable_value}。查看CFBundleExecutable應該會顯示是否有其他腳本用於啓動應用程序,而不僅僅是運行netbeans

從這一點來說,你必須做更多的挖掘,但希望這是足夠的信息,你就可以開始跟蹤應用程序如何從OS X發射裝置發射。欲瞭解更多信息和更好的參考,請this link,這是蘋果在Info.plist密鑰文件。

最後,你要注意,所有的應用程序啓動信息嚴重緩存;我聽說如果您對Info.plist進行了更改,則必須重命名應用程序包並將其命名,以使啓動程序獲取更改。

祝你好運!

+0

嗨@Matt,謝謝你的回答。奇怪的是,打開一個「NetBeans 7.2.app」確實有效,但圖標仍然是烤麪包。 CFBundleExecutable的Info.plist中的值確實是netbeans,但雙擊該圖標仍然不起作用...我向您頒發了賞金,因爲它還剩一個小時,您的答案是最接近的。 – Spider