V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
musray
V2EX  ›  Java

terminal中执行javac出现乱码的问题

  •  
  •   musray · 2012-04-19 21:21:05 +08:00 · 5722 次点击
    这是一个创建于 4599 天前的主题,其中的信息可能已经有所发展或是发生改变。
    java小白从昨天开始学java,系统是lion 10.7.3,安装了java runtime。其余都是系统默认的配置。

    用vim写了个*.java的程序,然后在terminal中执行:
    $ javac *.java
    之后系统提示了很多乱码什么的,截取如下:
    ????α߳?.java:2: ???棺???? EUC_CN ?IJ???ӳ???ַ?
    * java????????????????????????代表??????????????以?????????? *
    ^
    ?????α߳?.java:2: ???棺???? EUC_CN ?IJ???ӳ???ַ?
    * java????????????????????????代表??????????????以?????????? *
    ?????α߳?.java:32: ??Ҫ ';'
    System.out.printf("%d %f\n" s.zhouchang(), s.area());
    ^
    ?????α߳?.java:32: ??Ҫ ';'
    System.out.printf("%d %f\n" s.zhouchang(), s.area());
    中间省略1万字。。。。。

    在下的问题是,放下我写的程序错误不谈,系统为何提示了这么多“?????”呢?
    6 条回复    1970-01-01 08:00:00 +08:00
    musray
        1
    musray  
    OP
       2012-04-19 21:53:08 +08:00
    可能跟中文注释有关系,俺继续研究研究。
    roamlog
        2
    roamlog  
       2012-04-19 21:57:42 +08:00
    用 iTerm2,专门建一个编码为 gbk 的 profile
    musray
        3
    musray  
    OP
       2012-04-19 22:12:30 +08:00
    @roamlog 这个我再试试。现在javac 已经不提示错误了。运行$ java *.java的时候,却提示Exception in thread "main" java.lang.NoClassDefFoundError,是不是path没有设置?查了半天不知道这个究竟需不需要设,怎么设。
    leafgray
        4
    leafgray  
       2012-04-19 22:38:35 +08:00
    确定一下文件的编码.javac时可以通过-encoding 指定源文件的编码的.如
    javac -encoding utf-8 Test.java

    java执行的是编译后得到的class文件.如
    java -cp . Test
    -
    NoClassDefFoundError就是在classpath中没有找到对应的class. package什么的还有目录.
    这方面,原来有本JVM深度历坠讲得还是比较清晰的.例子简单....

    现在上手学,命令行用javac/java的估计是比较少的... IDE..
    musray
        5
    musray  
    OP
       2012-04-19 22:46:36 +08:00
    @leafgray 我也打算果断切换到IDE了。但有机会还是想玩玩命令行,现阶段学习语言要紧。
    chenze
        6
    chenze  
       2012-04-19 22:55:02 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2668 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 15:30 · PVG 23:30 · LAX 07:30 · JFK 10:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.