Letöltöttem egy "ganymed-ssh2" nevű fejlesztést.
Netbeansben JAVA SE alatt ezt a csomagot használva fel is tudtam építeni egy SSH kapcsolatot sőt parancsot is tudtam küldeni SSH-n keresztül a Linux szerveremnek.
Ugyan ezt a csomagot beimportáltam az Eclipse-be és a netbeansben megírt néhány sort is átmásoltam az adott java fileba.
maga a program lefut, az importálás is működik, semmi hibaüzenet, csak éppen a netbeans-el ellentétben a program nem csinál semmit :( mit ronthatok el?
a forráskód:
package klient;
import ch.ethz.ssh2.*;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class Klient
{
private Connection conn;
private Session sess;
private String ipcim="192.168.0.1";
private int port=22;
private String OUTcommand;
private String username="root";
private String password="password";
public static void main(String[] args)
{
new Klient().run(args);
}
private void run(String[] args)
{
try {
conn = new Connection(ipcim, port);
conn.connect();
conn.authenticateWithPassword(username, password);
OUTcommand="mkdir /home/xyz";
sess=conn.openSession();
sess.execCommand(OUTcommand);
sess.close();
conn.close();
} catch (IOException ex) {
Logger.getLogger(Klient.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Ez működik. Létre is jön az xyz nevű könyvtár a /home könyvtárban.
Androidos kódom így néz ki:
package ssh.test;
import java.io.IOException;
import android.app.Activity;
import android.os.Bundle;
import ch.ethz.ssh2.*;
public class SshtestActivity extends Activity {
private Connection conn;
private Session sess;
private String ipcim="192.168.0.1",username="root",password="password";
private int port=22;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try {
conn = new Connection(ipcim,port);
conn.connect();
conn.authenticateWithPassword(username,password);
sess=conn.openSession();
sess.execCommand("mkdir /home/wwx");
sess.close();
conn.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Megköszönném ha valaki tudna segíteni, én már szenvedek vele egy ideje de semmi. :(