1

展開ベースの一連のアクティビティも含まれています。

  1. 開発マシンから Linux ベースのサーバーへの FTP 転送を行います。
  2. Linux ボックスで特定のスクリプトを実行します。

これらの FTP アクティビティを実行する小さな Java ベースのユーティリティを作成することで、これらのアクティビティを自動化できる可能性があります。

ここに私の質問があります:

  1. FTP操作を実行するためのJavaライブラリはありますか(Apache commons net、http://commons.apache.org/net/など)?
  2. FTP 経由でシェル スクリプトを呼び出し、スクリプトの出力に基づいて特定のアクションを実行するためのオープンソース ライブラリはありますか?

フォーラムで特定の問題の解決策を探しているわけではないことに注意してください。ここでメンバーからのテクノロジー/Java ライブラリの代替案と提案を探すことにもっと興味があります。

4

3 に答える 3

4

はい、ftp 操作を実行するための apache commons ネット ライブラリが非常に多くあります。

you can view this link:

                        http://commons.apache.org/net/

Download the commons-net-ftp-2.0 lib from the above site.

I am also attaching my program to upload and download song to ftp server using the apache lib

アップロード中 :

public void goforIt(){


        FTPClient con = null;

        try
        {
            con = new FTPClient();
            con.connect("192.168.2.57");

            if (con.login("Administrator", "KUjWbk"))
            {
                con.enterLocalPassiveMode(); // important!
                con.setFileType(FTP.BINARY_FILE_TYPE);
                String data = "/sdcard/vivekm4a.m4a";

                FileInputStream in = new FileInputStream(new File(data));
                boolean result = con.storeFile("/vivekm4a.m4a", in);
                in.close();
                if (result) Log.v("upload result", "succeeded");
                con.logout();
                con.disconnect();
            }
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }






    }

ダウンロード:

public void goforIt(){
    FTPClient con = null;

    try
    {
        con = new FTPClient();
        con.connect("192.168.2.57");

        if (con.login("Administrator", "KUjWbk"))
        {
            con.enterLocalPassiveMode(); // important!
            con.setFileType(FTP.BINARY_FILE_TYPE);
            String data = "/sdcard/vivekm4a.m4a";

            OutputStream out = new FileOutputStream(new File(data));
            boolean result = con.retrieveFile("vivekm4a.m4a", out);
            out.close();
            if (result) Log.v("download result", "succeeded");
            con.logout();
            con.disconnect();
        }
    }
    catch (Exception e)
    {
        Log.v("download result","failed");
        e.printStackTrace();
    }



}
于 2012-06-20T04:58:09.223 に答える
2

PuTTY (SSH クライアント) について言及したので、おそらくJSchライブラリを確認する必要があります。SSH アクセスを提供し、ファイルを安全に転送し、シェル スクリプトをリモートで実行する機能を提供します。

于 2012-06-20T05:07:47.910 に答える
1

本番環境でftp4jを使用しています。たとえば、HTTP-Proxy、SOCKS-Proxy、FTPS、および FTPES をサポートしています。

シェル スクリプトを実行するには、これらのような ssh ライブラリを使用する必要があります。

于 2012-06-20T05:17:11.903 に答える