小编Osc*_*Ryz的帖子

编译时出现异常:错误版本50.0,应为49.0

我正在使用JXL API处理应用程序,当我尝试使用eclipse IDE编译时,它工作正常,当我尝试在命令提示符下编译并显示以下异常时,同样不编译.

Extract.java:6: cannot access jxl.read.biff.BiffException bad class file: C:\Program Files\Java\jdk1.5.0_01\jre\lib\ext\jxl.jar(jxl/read/biff/BiffException.class)
class file has wrong version 50.0, should be 49.0
Please remove or make sure it appears in the correct subdirectory of the classpa
th.
import jxl.read.biff.BiffException;
                     ^
1 error
Run Code Online (Sandbox Code Playgroud)

编辑:

我能够使用JDK 1.6执行.由于JDK 1.6还必须与较低版本兼容,为什么它不支持在JDK 1.5中编译的类文件.

java exception jxl

39
推荐指数
1
解决办法
9万
查看次数

Clojure是编译还是解释?

我在某处编写了Clojure.是真的编译,如Java或Scala,而不是解释,如Jython或JRuby?

interpreted-language compilation clojure jvm-languages compiled-language

37
推荐指数
3
解决办法
6250
查看次数

python中的win32con模块是什么?我在哪里可以找到它?

我正在构建一个在Windows中使用python和c ++的开源项目.我来到以下错误消息:

 ImportError: No module named win32con 
Run Code Online (Sandbox Code Playgroud)

同样发生在一个"预构建"的代码中它正在工作(除了在我的电脑中:P)

我认为这是python中的一种"流行"模块,因为我在其他论坛中看到了几条消息,但没有一条可以帮助我.

我有Python2.6,我应该已经安装了该模块吗?这是VC++的东西吗?

感谢您的帮助.

我有这个URL http://sourceforge.net/projects/pywin32/ 但我不知道如何处理可执行文件:S

python module

35
推荐指数
4
解决办法
6万
查看次数

java中的可打印字符

有谁知道如何检测java中的可打印字符?

过了一会儿(试用/错误)我得到了这个方法:

    public boolean isPrintableChar( char c ) {
        Character.UnicodeBlock block = Character.UnicodeBlock.of( c );
        return (!Character.isISOControl(c)) &&
                c != KeyEvent.CHAR_UNDEFINED &&
                block != null &&
                block != Character.UnicodeBlock.SPECIALS;
    }
Run Code Online (Sandbox Code Playgroud)

我通过KeyListener获取输入,然后Ctr-'key'打印出一个正方形.有了这个功能似乎还不够.

我在这里错过了一些炭火吗?

java unicode non-printing-characters

33
推荐指数
2
解决办法
2万
查看次数

Swing JButton:文本上方的图标

如何使用文本上方的图标在Swing中创建JButton?

java swing jbutton

33
推荐指数
1
解决办法
2万
查看次数

当""== s为假但"".equals(s)为真时

编辑 感谢您的快速回复.请看看真正的问题是什么.这次我大胆了.

我理解==和.equals之间的区别.所以,这不是我的问题(我实际上添加了一些上下文)


我正在为空字符串执行以下验证:

if( "" == value ) { 
    // is empty string 
} 
Run Code Online (Sandbox Code Playgroud)

过去从db中获取值或从另一个节点反序列化对象时,此测试失败,因为两个字符串实例确实是不同的对象引用,尽管它们包含相同的数据.

所以这些情况的解决方案是

if( "".equals( value ) ) {
   // which returns true for all the empty strings
}
Run Code Online (Sandbox Code Playgroud)

我很好.这很清楚.

今天这又发生了一次,但它让我感到困惑,因为这次应用程序是一个非常小的独立应用程序,根本不使用网络,所以没有从数据库中提取新字符串,也不从另一个节点去激活.

所以问题是:


其他情况下:

"" == value // yields false 
Run Code Online (Sandbox Code Playgroud)

"".equals( value ) // yields true
Run Code Online (Sandbox Code Playgroud)

对于本地独立应用程序?

我很确定代码中没有使用新的String().

并且字符串引用可以是""的唯一方法是因为它直接在代码中分配""(或者我认为的那样),如:

String a = "";
String b = a;

assert "" == b ; // this …
Run Code Online (Sandbox Code Playgroud)

java comparison equality equals

33
推荐指数
4
解决办法
2万
查看次数

有没有办法知道Java程序是从命令行还是从jar文件启动的?

我想要在控制台中显示一条消息或者弹出一个消息,所以如果没有指定参数,我想知道我应该显示哪个

就像是:

if( !file.exists() ) {
    if( fromCommandLine()){
        System.out.println("File doesn't exists");
    }else if ( fromDoubleClickOnJar() ) {
        JOptionPane.showMessage(null, "File doesn't exists");
    }
 }
Run Code Online (Sandbox Code Playgroud)

java validation command-line double-click

33
推荐指数
1
解决办法
3756
查看次数

Java:将集合转换为数组以表示String

从Sun的Java教程中,我会认为这段代码会将一个集合转换为一个数组.

import java.util.*;

public class Blagh {
    public static void main(String[] args) {
        Set<String> set = new HashSet<String>();
        set.add("a");
        set.add("b");
        set.add("c");
        String[] array = set.toArray(new String[0]);
        System.out.println(set);
        System.out.println(array);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,这给了

[a, c, b]
[Ljava.lang.String;@9b49e6
Run Code Online (Sandbox Code Playgroud)

我误解了什么?

java arrays set

32
推荐指数
3
解决办法
10万
查看次数

"包"和"模块"之间有什么区别

我使用Java,我们只有包.我知道还有其他编程语言也包含模块.

有什么不同?

谢谢

java comparison module package

32
推荐指数
4
解决办法
5万
查看次数

如何在Websphere中启用JMX?

我想使用JConsole来监视我的Websphere应用程序,但我不知道如何启用JMX.

java websphere jmx jconsole java-ee

30
推荐指数
4
解决办法
9万
查看次数