2011-02-03 78 views
0

我已经在Java开发的一个模块5.0混合的Java 5.0和Java 6.0代码

package mypack; 

class MessageParser { 
    public MessageParser(String s) { 
    ...... 
    } 
} 

我还有一个模块下的Java 6.0

import mypack; 
...... 
String str = someString; 
MessageParser parser = new MessageParser(str); 
...... 

发展,但我得到了错误 “找不到符号构造函数MessageParser(java.lang.String)“

BTW:我使用的IDE是intellij想法

任何人都可以告诉我为什么以及如何让它工作?

+0

是Java 5的代码只能作为一个jar/class文件,或者你可以在Java 6中重新编译? – 2011-02-03 21:19:33

回答

5

这与Java5-6没什么关系。

也许你的类路径中有不同的版本。

仔细检查您在Java 6代码中使用的是什么jar /文件,然后三重检查它是否与您在Java 5版本中看到的对应。很可能你会看到一个没有构造函数的旧版本。

+0

你很好 – Leon 2011-02-03 21:25:26

1

这个问题与java版本没有任何关系,但我认为你正在尝试编译第二类再次旧版本的第一类,它不包含带有一个字符串arg的构造函数。

+0

你也很好。 – Leon 2011-02-03 21:24:44

1

这与Java版本无关,但与您尝试连接“模块”的方式无关 - 这些定义如何?作为JAR文件?你在使用IDE吗?

那么首先,import mypack;不会导入mypack中的任何类。你要么必须列出类以及或使用通配符:

import mypack.MessageParser; 

import mypack.*;