2009-10-14 43 views
3

我需要使用ant运行java类。但是,当我运行一个类文件,它会引发IllegalAccessException。Ant - Java命令 - IllegalAccessException

这是我的蚂蚁代码:

<target name="test"> 

    <java classname="A" classpath="."> 
    </java> 
</target> 

我得到这个例外,当我运行这个目标脚本。

[java] java.lang.IllegalAccessException: Class org.apache.tools.ant.taskdefs.ExecuteJava can not access a member of class A with modifiers "public static" 
    [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:180) 

这是我的java程序

class A 
{ 
    public static void main(String[] args) 
    { 
     System.out.println("Hello java!"); 
    } 
} 

如果我去错了吗?

感谢, 斯里尼瓦桑R.

+1

请问类必须'public'? – 2009-10-14 05:52:09

回答

9

您的A类必须是公开的:

public class A { 

    public static void main(String[] args) { 
     System.out.println("Hello java!"); 
    } 
} 
+0

谢谢。通过改变“公共”类来解决问题。 – Srinivasan 2009-10-14 06:01:27

+0

所以它会好心接受答案,因为它解决了你的问题 – Vladimir 2009-10-14 07:50:36

+1

java 101,但我仍然设法犯了错误......谢谢! – jsh 2012-08-17 16:10:35