2012-03-04 35 views
-1

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

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) 
+0

(未测试)除非有例外情况,否则请尝试在URL中使用一个方案,比如说'file:// 192.168.0.1/user' – 2012-03-04 11:14:13

回答

2

\192.168.0.1\user是不是一个有效的URL,作为例外说。 URL需要协议(文件,http,https等),以便系统知道如何访问资源。

正如Alexander建议,请尝试file://192.168.0.1/user - 也可以从您的浏览器尝试此操作,以查看此文件夹是否实际通过file:// URL访问。

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

+0

我想你需要一些额外的'/'或\。我会尝试:'新的URL(“file://\\\\ 192.168.0.1 \\ user”)' – 2012-03-04 11:42:27

+0

我不打算它是Java语法(即逃脱),因为这总是相当不可读 - 但你是纠正它需要在代码中转义。 – DNA 2012-03-04 13:37:31

相关问题