当前位置: 首页 > 面试题库 >

为clojure源文件启用UTF-8编码

洪浩波
2023-03-14
问题内容

我正在从事一个涉及Maven,Java和Clojure的项目。我面临的问题是,UTF-8我的clojure源文件中有一些字符,由于这些原因,java编译器无法正确解释我的源代码,我通过设置环境变量使其正常工作JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8,但是我想要的是通过MAVEN传递此属性。

我已经尝试设置,MAVEN_OPTS=-Dfile.encoding但这似乎不起作用。
我也尝试过为Maven的编译器插件设置配置…如下所示:

 <configuration>
        <compilerArgument>-Dfile.encoding=UTF8</compilerArgument>
 </configuration>

这也不起作用。

我做错了什么,还是有其他方法。

谢谢,
RD

好的,这里有更多细节。这是我的父母pom

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
      <source>1.5</source>
      <target>1.5</target>
      <encoding>UTF-8</encoding> <! also tried <encoding>UTF8</encoding>
    </configuration>
  </plugin>

除了…之外,孩子的绒球里没有其他有趣的东西了。

<resources>
  <resource>
    <directory>src/main/clojure</directory>
  </resource>
</resources>

;; clojure代码段,这会导致问题

(let [char "대"]
   (not (empty? (filter #(s/contains? % char) <some-list>)))
;; The list is always empty because I never find a match if I do not set the env. variable

问题答案:

更新:根据您的评论,这是运行时,而不是编译问题。解决方法是,您可以尝试将字符转义为Unicode。

例如,在clojure文件中将字符更改为’\ uXXXX’,其中XXXX是十六进制的Unicode点。

如果您的问题发生在单元测试中。您可以通过设置argLine属性来配置surefire插件。这使您可以在命令行上设置任意JVM选项。



 类似资料:
  • 问题内容: 我保存了Java源文件,将其编码类型指定为UTF-8(使用记事本,默认情况下,记事本的编码类型为ANSI),然后尝试使用以下命令对其进行编译: 但它给出了错误信息” 还有什么其他方法可以编译吗? 来源如下: 问题答案: 您的文件 被 读为UTF-8,否则有值“65279”字符就绝不可能出现。期待你的源代码是在平台默认的编码,根据该文件: 如果未指定 -encoding ,则使用平台默认

  • 问题内容: 我有一个PHP脚本,名为: http://cyber- flick.com/apiMorpho.php?method=getMorphoData&word=kot 以纯文本显示一些数据: 如您所见,在适当的字符位置上有很多“忙碌”。我想做的是以某种方式显示此内容,以便人们在浏览器中看到正确的UTF-8字符。 您可以将其封装在HMTL标签中并以元UTF-8编码进行设置,但是由于将从该脚本

  • 问题内容: 我有一些当前代码,问题是它创建了一个1252代码页文件,我想强制它创建一个UTF-8文件 任何人都可以通过此代码帮助我,因为我说它当前可以工作…但是我需要强制保存utf ..我可以传递参数或其他东西吗? 这就是我所拥有的,任何帮助我都感激不尽 问题答案: 而不是使用,创建一个。然后,你可以将其包装在中,以允许你在构造函数中传递编码。然后,你可以将数据写入语句中:

  • 问题内容: 我需要将文本文件转换为String,最后,我应该将其作为输入参数(类型InputStream)放入IFile.create(Eclipse)。寻找示例或方法,但仍然不知道…需要您的帮助! 只是为了测试,我确实尝试将原始文本文件转换为使用此代码编码的UTF-8 但即使以为最终的* .test.txt文件具有UTF-8编码,里面的字符也已损坏。 问题答案: 您需要使用参数指定的编码。 这也

  • 我需要将多个CSV文件(使用不同的编码)转换为UTF-8。 这是我的代码: 当我尝试运行此代码时,我得到以下错误: UnicodeDecodeError:'utf-8'编解码器无法解码位置5057的字节0xf3:无效的延续字节 有人能帮我吗?谢谢

  • 我是ServiceStack的新手。它具有为数据提供csv文件的功能,但我需要以UTF8格式下载它,因为我得到一些特殊字符。我尝试过这个配置设置。 但运气不好。。请指出我做错了什么。