Java Reflect 无法在我的系统上工作 - 为团队成员工作

标签 java reflection

我正在使用 Java 开发一个团队项目。一个要求是我们动态填充实现特定接口(interface)的所有类的下拉菜单。编译后可以添加新类。为了实现这一点,我们使用反射。

问题:我的系统上的所有下拉菜单都是空白的。我一生都无法弄清楚为什么他们没有人口。所有其他 5 名团队成员都已在他们的系统上运行。

我厌倦但不起作用的事情:

1) 安装最新的 eclipse (galileo),因为其他团队正在使用它
2)重新安装最新的java版本(jdk1.6.0-17和jre6)
3)检查PATH和JAVA_HOME变量

关于我还可以尝试什么,或者我所做的事情是否应该解决它但没有解决,有什么想法吗?这让我发疯。

编辑: 我应该更清楚我们是在团队中发展。我们使用 SVN 进行版本控制,并且都运行完全相同的源代码。我什至尝试从 SVN 检查整个树的新副本,但当它为队友工作时,我的系统上的反射也遇到了同样的问题。

团队创建了一个可执行的 jar,它在除了我的系统之外的每个人的系统上都运行良好。除了反射位之外,一切都对我有用。

最佳答案

您需要调试您的应用程序。这意味着您必须系统地探索问题的可能原因。以下是我想到的一些事情:

  • 您的 GUI 是否可能失败而不是反射失败?如果使用 System.out.println() 而不是菜单输出会怎样?

  • 您的反射代码是否抛出异常,您是否忽略它?

  • 您的反射代码实际上被调用了吗?一定要在其中添加 println()!

  • 接口(interface)测试是否存在拼写错误或类似错误导致失败?尝试查找实现 Serialized 的类!

  • 您的反射测试是否在主线程中运行并尝试更新您的 GUI?您需要使用 SwingUtilities.invokeAndWait 来获取 Swing 工作线程的更新。

  • 您正在使用 Eclipse; Eclipse 有一个非常棒的调试器。在主要操作所在位置附近设置一个断点,然后单步执行代码。

关于Java Reflect 无法在我的系统上工作 - 为团队成员工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1761200/

相关文章:

scala - Scala 中 Java 反射的类型安全用法

c# - 如果类是 WinRT 类型,如何使用 C# 反射来确定

c# - 如何使用反射分析 C# 中的特殊类型约束?

java - NetBeans 无法安装某些模块

java - 如何在 Parse.com 中存储和接收个人资料图片?

java - Spring MVC 将文件附加到消息

c# - Enumerable.Contains 与 MethodInfo

java - 鼠标事件 e (Jpanel) Java 帮助

java - 为什么本例中的字符串 helloWorld 没有改变?

javascript - 访问 Angular 分量元数据