Java线程程序不工作

标签 java eclipse multithreading constructor

我编写了一个示例java线程程序,但它显示错误如下

java.lang.Error: Unresolved 编译问题:构造函数线程(测试)未定义

显示测试类不是可运行的类。我引用了很多网站,但没有得到解决方案,它显示我所做的事情是正确的。
我的java代码:

public class ThreadDemo {  
       public static void main(String args[]) {  
        new Thread(new Test()).start();
    }
}

Test.java 类文件实现了 Runnable,位于 jar 文件中,我将其作为库包含在 的项目中 eclipse 。 有什么问题吗?
Test.java

public class Test implements Runnable {  
       @Override public void run() {  
        Sysout("Test");
    }
}

测试类包含许多其他方法,这些方法正在使用项目中其他 jar 中的许多其他类,但 run 方法不会调用其中的任何方法。这些因素有什么问题吗?

这个线程演示与另一个类实现了仅包含 run() 和 sysout() 的 Runnable ,运行良好。但正如我所说,我的 Test 类包含许多方法,这些方法进一步引用其他 jar,但到目前为止尚未在 Test 类的 run() 方法中调用。当我使用 new Thread(new Test()).start(); 时Eclipse 显示非法参数或转换为可运行参数建议并出现错误。然后我进行了类型转换并得到了上述错误。是否存在与使用任何类型的 jar 和变量的类的运行线程相关的问题?

提前致谢。

最佳答案

据我估计,上面列出的文件格式正确。该问题可能是由于 jar 文件中的类路径中存在另一个名为“Test.java”的文件引起的。这似乎不太可能,但我将列出的类放入编译器中并且它们可以工作,因此问题似乎一定在其他地方。

重命名您的 Test.java 并查看问题是否仍然存在。

关于Java线程程序不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19419292/

相关文章:

java - 为什么 MDB 类不能是最终的

Java:调用存储过程时出现 mysql 错误

java - Junit4 运行一个测试类固定次数并显示结果(eclipse)

python - 使用 python 和 tkinter 实时绘制串行数据

java - 处理 ForkJoinPool 任务/操作中未捕获异常的更好方法

java - 使用 Maven 构建 Java Web Start 应用程序

java - 迭代时比较 HashMap 元素的优化

python - 间隔重复功能?

java - IOException :cannot run program:CreateProcess error=193, %1 不是有效的 Win32 应用程序

java - 由于无法使用 Maven,如何从 JBoss AS 将库添加到项目中?