【问题标题】:Grails: Native2ascii error when I add a new property to message.propertiesGrails:向 message.properties 添加新属性时出现 Native2ascii 错误
【发布时间】:2012-06-18 11:29:56
【问题描述】:

当我在运行时向我的 grails 应用程序中的 message.properties 文件添加新属性时收到一个奇怪的错误。当我通过命令行重新启动应用程序或重新启动 STS 时,此错误消失。我使用的是 2.0.1 版本,直到一周前,我还能够在运行时向 message.properties 文件添加新属性。这是错误的堆栈跟踪

| Error 2012-06-18 16:54:58,702 [Thread-38] ERROR plugins.AbstractGrailsPluginManager  - Plugin [i18n:2.0.1] could not reload changes to file [/home/project/grails-app/i18n/messages.properties]: Error starting Sun's native2ascii: 
Message: Error starting Sun's native2ascii: 

有什么想法吗?

【问题讨论】:

  • 也许this 有帮助。
  • 试过但没有帮助。我仍然得到:错误错误打包应用程序:处理消息包时发生错误:启动Sun的native2ascii时出错:(使用--stacktrace查看完整跟踪)

标签: grails properties internationalization sts-springsourcetoolsuite


【解决方案1】:

cd 到 jdk 路径

cp lib/tools.jar jre/lib/ext/tools.jar

它解决了问题。

注意:要获得正确的 jdk 路径, 检查 GGTS --> Windows --> Preferences --> Java --> Installed JREs --> JREs Home Path

【讨论】:

  • 有效~! (顺便说一句,我使用的是 Ubuntu 14.04/JDK1.8/Maven)
【解决方案2】:

您应该使用 JDK 而不是 JRE。

另外,如果您不需要 native2ascii(您可能不需要),请在 BuildConfig.groovy 中使用:grails.enable.native2ascii = false

【讨论】:

    【解决方案3】:

    非常令人沮丧的错误。

    在我执行了上面在这个线程中建议的所有步骤后,grails 应用程序仍然没有看到 tools.jar...

    GRRR!

    对于在 GGTS 中在指向 1.7 jdk(设置 jre 时)持续存在 之后时遇到此问题的任何人,您必须执行以下操作以下:

    1. 在 GGTS Preferences 面板的“Installed JRE's”中的“JRE Definition”面板中选择正确的 jdk (1.7)。
    2. 查看来自该 jdk 的 jar 填充在“JRE 系统库”底部的 JRE 定义窗口面板中。
    3. 检查 /lib/ext 中的 tools.jar(我的没有在 jdk lib 中显示为可识别,或者在我尝试了上面的 'zawmn83's post 之后)。
    4. 如果 tools.jar 在 jdk 中没有显示为可识别,请单击“添加外部 JAR...”按钮,找到并添加它。

    这完全解决了我的问题 - 感谢上帝!!!!

    附言我还必须在我的 .bash_profile 中正确地将我的 JAVA_HOME 设置为我的 1.7 jdk,但是,这已经作为解决方案的一部分在这里被调用了。

    感谢大家为此做出贡献 - 今天在修补它时,这个错误一直在给我造成脑损伤,而上述建议让我完成了 99% 的工作!

    【讨论】:

      【解决方案4】:

      我也遇到了类似的问题,最后我

      1. 删除了项目的调试配置
      2. 删除了项目(但不是文件)
      3. 删除了 .settings 目录
      4. 从项目中删除了 .classpath 和 .project 文件
      5. 在工作区中创建了一个同名的新常规项目
      6. 重新创建调试 -> 作为运行应用程序运行

      希望对你有帮助

      【讨论】:

      • 我不知道这被否决了。我刚刚在 GGTS 的一个项目中遇到了完全相同的问题,这个解决方案又对我有用。
      【解决方案5】:

      当我在 Ubuntu 上同时安装 java 8 和 java 7 时发生这种情况,但没有使用 update-alternatives 正确配置它。具体来说,JAVA_HOME 设置不正确。

      【讨论】:

        【解决方案6】:

        我在 linux 下从命令行编译 Grails 2 时遇到了类似的错误。

        Error packaging application: Error occurred processing message bundles: Error starting Sun's native2ascii:
        ...
        Caused by: : Error starting Sun's native2ascii: 
        ...
        Caused by: java.lang.ClassNotFoundException: sun.tools.native2ascii.Main`
        

        我通过如上所述将 JAVA_HOME 设置为 JDK 来解决它,类似于

        JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.161.x86_64
        

        而不是:

        JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk.x86_64
        

        还在PATH 变量中包含$JAVA_HOME/bin

        【讨论】:

          【解决方案7】:

          在linux上,运行grails war命令,问题就解决了

           cp /usr/lib/jvm/java-1.8.0-openjdk/lib/tools.jar /usr/lib/jvm/java-1.8.0-openjdk/jre/lib/ext/
          

          【讨论】:

            猜你喜欢
            • 2021-07-27
            • 1970-01-01
            • 2021-10-26
            • 1970-01-01
            • 1970-01-01
            • 2017-06-02
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多