Java代码的等效Scala代码

Java代码的等效Scala代码,java,scala,sftp,Java,Scala,Sftp,我是scala的新手。有人知道scala中的以下java代码的等效代码是什么吗 package sampleFTP import org.apache.commons.net.ftp.FTPClient import org.apache.commons.net.ftp.FTPReply; import org.apache.commons.net.ftp.FTPSClient; import com.jcraft.jsch._ object FTPTest { def main(arg

我是scala的新手。有人知道scala中的以下java代码的等效代码是什么吗

package sampleFTP
import org.apache.commons.net.ftp.FTPClient
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.ftp.FTPSClient;
import com.jcraft.jsch._
object FTPTest {



 def main(args: Array[String]) {
      println("Hello, world!")
      var ftpClient= new FTPClient();


    val SFTPPASS = "xxxx";
    val SFTPWORKINGDIR = "/xxxx/xxxx";


    System.out.println("preparing the host information for sftp.");

 val jsch = new JSch();
        var session = jsch.getSession("xxxx", "xxxx", 22)
        session.setPassword(SFTPPASS);
        var config = new java.util.Properties();
        config.put("StrictHostKeyChecking", "no");
        session.setConfig(config);
        session.connect();
        System.out.println("Host connected.");
        var channel = session.openChannel("sftp");
        channel.connect();
        System.out.println("sftp channel opened and connected.");


       var sftpChannel = (ChannelSftp) session.openChannel("sftp");//error in this line
        System.out.println("Directory:" + sftpChannel.pwd());

        session.disconnect();
  }

}
我得到以下错误

值会话不是对象com.jcraft.jsch.ChannelSftp的成员


我已使用
jsch
成功实现了安全的
FTP
连接。如何通过
scala
中的
jsch
下载并列出文件,以转换为scala中的其他类型使用:

session.openChannel("sftp").asInstanceOf[ChannelSftp]

我尝试了这个(var sftpChannel=(ChannelSftp)channel;)在scala中也不赞成使用的方法。通常认为模式匹配更好。