基於「jsch」的實現適用於我。
但由於使用了Vector(舊式Java集合),它看起來並不現代。
我發現其他實現不太流行,沒有記錄。
你可以推薦他/她有很好的使用經驗的SFTP庫的實現嗎?
謝謝。尋找java SFTP現代庫,而不是jsch
回答
正如@dty說,只要你爲什麼關心的在庫過時的類/方法的使用你的應用程序能夠順利工作?
你只需要關心你打來的電話,而不是在裏面如何工作。
你也可以使用JSch上面的抽象工具,但它不會改變事物。
您還可以檢查JSch的替代品,但作爲JSch被廣泛應用於你必須與它可能不太錯誤。
它的工作原理。誰在乎它是否使用Vector
?這是迄今爲止最受歡迎的一種。事實上,這是我唯一可以想到的,而不訴諸谷歌。
http://stackoverflow.com/questions/1386275/why-java-vector-class-is-considered-obsolete-or-deprecated – Boris 2010-10-07 09:49:21
你有一個點?我知道Vector是同步的。但是:a)在具有無限制鎖的現代JVM上,同步開銷實際上爲零; b)與加密的網絡通信負擔相比,您正在談論少數額外的處理器週期。 – dty 2010-10-07 17:23:33
另外,如果您沒有任何身份標識並且一直都在打開新的連接,那麼Vector並不會真正用於性能關鍵部分。 – 2011-06-08 00:29:30
在github上有一個較新的「版本」jsch。在很多方面對現有圖書館都有很大的改進。查看網站上的自述文件和全面的javadoc以獲取更多信息。 https://github.com/vngx/vngx-jsch。它也可用於大多數主要的maven回購站,並且與OSGi兼容。有很多選擇,但這個是穩固的,我相信最新的(spec/code/docs)。免責聲明:我是貢獻者。
我今天才發現這...並看到你做了一些我也做過的,我的[jsch-documentation ](http://github.com/epaul/jsch-documentation)版本(不會更改任何功能,主要是添加文檔)。我認爲原始JSch沒有更新爲使用現代類,泛型等的主要原因是它仍然應該可以與舊的VM(以及低端設備)一起使用。 – 2011-06-08 00:23:00
另外,你是否嘗試聯繫原作者?有一個[活動郵件列表](http://sourceforge.net/mailarchive/forum.php?forum=jsch-users)。 – 2011-06-08 00:27:08
與傳統支持相比,我們更關注性能和代碼質量。更何況任何東西都可以根據需要輕鬆地反轉。除了性能改進和規範遵守之外,還有許多錯誤修復和可用性增強。它大多是在內部重新編寫的,但是對於jsch的用戶來說api會很舒服,並且由於代碼庫來自jsch,所以我們通過將它包含在名稱中來表示敬意。我們沒有聯繫任何人,這是一個完全獨立的項目分支。 – Scott 2011-06-09 19:59:24
一個便宜的商業替代品(我自己的產品,披露),是edtFTPj/PRO。
我已使用此庫https://github.com/shikhar/sshj/。它有一個很好的API [需要Java 6]。
- 1. JAVA JSCH SFTP編程方法
- 2. JSCH Sftp printWorkingDirectory
- 3. 使用Java的SFTP文件傳輸JSch
- 4. SFTP Java - 管道關閉Jsch異常
- 5. 使用jsch庫複製sftp文件
- 6. 如何使用JSch sftp chown?
- 7. 使用JSch和GlobalScape的SFTP
- 8. 尋找一個java代碼生成庫
- 9. 如何重寫JSCH SFTP?
- 10. JSch SFTP文件下載
- 11. 問題在JSch使用SFTP
- 12. 在Java中尋找Chromakey庫
- 13. 尋找與平分,而不是停止
- 14. 大熊貓尋找scikits.statsmodels而不是statsmodels
- 15. Windows服務尋找app.config而不是app.exe.config
- 16. JPA:通過接口而不是實現來尋找
- 17. 如何讓jruby尋找純java nokogiri而不是mingw?
- 18. 我尋找一個基於.NET而不是Java
- 19. Cmake:告訴find_package尋找32位庫(而不是64位lib)
- 20. JSch sftp上傳/下載進度
- 21. Java SFTP傳輸庫
- 22. JSch SFTP轉移改變編碼
- 23. 使用Jsch檢查SFTP權限
- 24. 找不到符號。正在尋找超類而不是子類
- 25. Java使用JSch上傳SFTP,但如何覆蓋當前文件?
- 26. jsch sftp - 更改到父目錄
- 27. sftp JSch傳輸文件到遠程cygwin
- 28. JSch sftp傳輸剝離Windows行結束
- 29. SFTP集成JSCH - 無法執行會話
- 30. 無法使用jcraft JSch連接到SFTP
舊的SSH實現的問題在於,這種實現通常不適用於更高版本的SSH服務器軟件。因此必須提供維護以實現更好的兼容性,這是開源實現無法提供的。 – 2010-10-07 07:53:47
名稱中的線索......如果它是開源的,並且您希望支持「SSH服務器軟件的更高版本」的新功能,那麼只需自己實現它。 – dty 2010-10-07 17:24:35