java - 遇到一些愚蠢的语法错误

标签 java ant

在以下行出现语法错误:

`List<Class> findClasses(File directory)` throws `ClassNotFoundException`...

无法找出原因。这是我的代码。

import org.apache.tools.ant.Task;
import java.util.*;
import java.io.*;

public class CreateTestPackage extends Task
{
 String allTestsFile = getProject().getProperty("alltestfiles")+ getProject().getProperty("testfile");
 public void execute()
 {
  List<Class> findClasses(File directory) throws ClassNotFoundException
  {

   List<Class> classes = new ArrayList<Class>();
   if (!directory.exists())
   {
    return classes;
   }
   File[] files = directory.listFiles(new FilenameFilter()
   {
    public boolean accept( File dir, String name )
    {
     return name.matches("test.*\\.class");
    }
   });
   for (File file : files)
   {
    if (file.isDirectory())
    {
     assert !file.getName().contains(".");
     classes.addAll(findClasses(file));
    }
    else if (file.getName().endsWith(".class"))
    {
     classes.add(Class.forName(file.getName().substring(0, file.getName().length() - 6)));
    }
   }
   return classes;
  }
  for(Class c : classes)
  {
     string packageName=c.getPackage().getName();
        BufferedWriter out =null;
        try
        {
           out = new BufferedWriter(new FileWriter(testfile));
           out.write(packageName+"\n");         
        }
        catch (IOException e)
        {
          e.printStackTrace();
       }
        finally
        {
          if (out!=null)
           try
           {
              out.close();
           }
           catch (IOException e)
           {
              e.printStackTrace();
           }
       }
  }

 }
}

最佳答案

问题在于您定义了 execute() 方法,然后尝试在其中定义 findClasses() 方法。

这不是合法的 Java 语法。

您需要先关闭execute的方法体,然后才能定义另一个方法。

关于java - 遇到一些愚蠢的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3087540/

相关文章:

java - 是否可以在不重置 JComponent 属性的情况下为 JComponent 设置操作?

java - 如何将 sql 查询排除在 java 代码之外

android - Ant 脚本中 aapt 元素的文档

eclipse - Java 7 中的 emma 和 junit 导致 java.lang.VerifyError 和非法局部变量错误

java - 如何在hudson中的特定jdk上运行Findbugs和PMD?

java - 如何使用 Maven 部署多项目?

java - 如果之前单击了另一个按钮,如何防止 onClick

java - 我什么时候需要使用@WebServiceRef?

java - Apache ant list 类路径?

java - Ant:将路径添加到 bash 脚本中的 java 类