如何使用其他计算机加载类文件

时间:2012-03-04 11:09:49

标签: java exception malformedurlexception

您好我正在尝试使用LAN线从其他计算机访问java类文件。 我必须从用户文件夹中加载来自ip 192.168.0.1的Tester类文件!!请帮助我如何做到这一点,我的代码在下面描述。

import java.net.*;
public class MyLoader {
   public static void main (String argv[]) throws Exception {


      URLClassLoader loader = new URLClassLoader(new URL[] { new URL("\\192.168.0.1\\user") });//ip of other computer  where from  user folder i use Tester class

      // Load class from class loader. argv[0] is the name of the class to be loaded
      Class c = loader.loadClass (argv[0]);

      // Create an instance of the class just loaded
      Object o = c.newInstance();

  }
}

在运行时我使用[java MyLoader Tester]。 这是我的测试人员java文件

public class Tester {

public Tester () {
      System.out.println ("Hello there");
   }

   public static void main(String argv[]) {
     System.out.println("Network Class Loaders");
   }
}

我收到了此异常错误

 Exception in thread "main" java.net.MalformedURLException: no protocol: \192.168
.0.1\user
        at java.net.URL.<init>(Unknown Source)
        at java.net.URL.<init>(Unknown Source)
        at java.net.URL.<init>(Unknown Source)
        at MyLoader.main(MyLoader.java:7)

1 个答案:

答案 0 :(得分:2)

\192.168.0.1\user不是有效的网址,例外情况就是如此。 URL需要协议(文件,http,https等),以便系统知道如何访问资源。

正如亚历山大建议的那样,尝试file://192.168.0.1/user - 也可以在浏览器中尝试此操作,看看是否可以通过file://网址实际访问此文件夹。

它只是您尝试访问的共享文件夹,还是其他计算机上的Web服务器提供的文件(在这种情况下使用http协议)?