2011-02-17 131 views
0

我需要上傳SCP文件。我在stackoverflow上找到這個庫http://code.google.com/p/commons-net-ssh/ 我下載.jar並添加到BuildPath,但是如何添加用戶名和密碼到這個? 我試過這個,但它不起作用。如果你有其他圖書館這樣做,它會沒事的。任何幫助?SCP上傳文件問題

SSHClient ssh = new SSHClient(); 
//ssh.useCompression(); 
ssh.loadKnownHosts(); 
ssh.connect("localhost"); 
try { 
    ssh.authPublickey(System.getProperty("user.name")); 
    new SCPDownloadClient(ssh).copy("ten", "/tmp"); 
} finally { 
    ssh.disconnect(); 
} 

回答

1

解決辦法有兩個:

  1. 您可以創建一個密鑰對ssh-keygen沒有一個密碼短語。使用authPublickey(java.lang.String username, java.lang.String... locations)選擇連接的密鑰。

  2. 您可以將密碼保存在Java代碼可以讀取的文件中。

兩種解決方案的安全性大致相同:完全取決於誰可以讀取密碼/密鑰文件。只能由運行Java代碼的用戶讀取。

0
SCPClient scp = conn.createSCPClient(); 
scp.put(localFileLoc,zipFileName,""/temp,"0777"); 

這有助於我使用SCP。我用過ganymed-ssh2-build251beta1.jar