繁体   English   中英

将 JPublisher 与 jdk8 一起使用

[英]Use JPublisher with jdk8

我有一个像这样执行命令jpub的程序

executeCommand("jpub -u "+args[0]+"/"+args[1]+" -package="+args[3]+" -codegen=iso -url="+args[2]+" -plsqlpackage="+resultSetMain.getString(1)+" -dir "+args[4]+" -case=lower -plsqlfile="+resultSetMain.getString(1)+"_wrapper.sql,"+resultSetMain.getString(1)+"_wrapper_drop.sql -s "+resultSetMain.getString(1)+":"+resultSetMain.getString(1)+"_OUT -compile=false -omit_schema_names");

execCommand只是一个获取运行时实例并执行命令的私有 function 时:

Process pr = rt.exec(command);

我正在使用 maven 来构建我的项目。
当我使用 eclipse Juno 运行我的程序时,一切都很好,但是当我想迁移到 eclipse 的最新版本时,当我运行mvn clean install时,我遇到了这个错误

Exception in thread "main" java.lang.NoClassDefFoundError: sun/io/CharToByteConverter

我试图构建一个包含此 class 的 jar converter并将其添加到我的项目中,但这不起作用

<repositories>
    <repository>
        <id>my-local-repo</id>
        <url>file://${basedir}/lib</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>ma.me</groupId>
        <artifactId>converter</artifactId>
        <version>1.0.0</version>
        </dependency>
</dependencies>

我怎么解决这个问题?

在阅读了 JPublisher 的文档之后,我发现了一个部分,它讲述了如何指定 JVM 来调用 JPublisher doc

我们可以使用-vm=value参数,其中的值是JDK6或 7 的位置,因此您可以像这样运行命令:

executeCommand("jpub -u "+args[0]+"/"+args[1]+" -package="+args[3]+" -codegen=iso -url="+args[2]+" -vm="+args[8]+" -plsqlpackage="+resultSetMain.getString(1)+" -dir "+args[4]+" -case=lower -plsqlfile="+resultSetMain.getString(1)+"_wrapper.sql,"+resultSetMain.getString(1)+"_wrapper_drop.sql -s "+resultSetMain.getString(1)+":"+resultSetMain.getString(1)+"_OUT -compile=false -omit_schema_names");

在我们的示例中, args[8]包含可执行文件 java 6 的路径,例如: D:\Java\jdk6\bin\java

如何使用jdk8对ArrayList进行分组过滤<object><div id="text_translate"><p>这是周一的 Object 电话。 它有两个属性,开始和结束,都是字符串。 结束属性可以包括“;” 像这样</p><pre>Mon m1 = new Mon(); m1.setStart("A"); m1.setEnd("a;b"); Mon m2 = new Mon(); m2.setStart("A"); m2.setEnd("b"); Mon m3 = new Mon(); m3.setStart("C"); m3.setEnd("c"); Mon m4 = new Mon(); m4.setStart("A"); m4.setEnd("c");</pre><p> 这是 ArrayList。</p><pre> List&lt;Mon&gt; list = new ArrayList(); list.add(m1);list.add(m2);list.add(m3);list.add(m4);</pre><p> 现在我想按起始属性和结束属性对列表进行分组,但基于末尾包含“;”,所以我也想将 m1 和 m2 放入同一组,因为 m1.end 包含 m2.end ,但 m4 在另一组中,因为 m4 开始和结束与 m1,m2 不同。</p><p> 我尝试使用 Collectors.groupingBy 按开始分组</p><pre>Map&lt;String, List&lt;Mon&gt;&gt; map = list.stream().collect(Collectors.groupingBy(d -&gt; d.getStart()));</pre><p> 但这不是我想要的 Output 的结果,如下所示:</p><pre> key: Aa;b OR Ab, value: m1, m2 key: Cc, value: m3 key: Ac, value: m4</pre><p> 有什么方法可以实现它,jdk8 stream function 更好</p><p>非常感谢</p></div></object>

[英]How to use jdk8 to group by and filter the ArrayList<Object>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在列表和jdk8上使用流,过滤器和平均值 如何在 jdk8 中使用 streams for 循环? 是否可以将ojdbc7.jar与JDK8一起使用? JDK8无法与JDK8(WS客户端)一起使用 使用 java serviceloader build with jdk8 use in &gt;= java9 用于 JDK8 的 Rhino javascript JSR-223-wrapper 在哪里? 如何让Eclipse使用JDK8编译项目? 如何使用jdk8对ArrayList进行分组过滤<object><div id="text_translate"><p>这是周一的 Object 电话。 它有两个属性,开始和结束,都是字符串。 结束属性可以包括“;” 像这样</p><pre>Mon m1 = new Mon(); m1.setStart("A"); m1.setEnd("a;b"); Mon m2 = new Mon(); m2.setStart("A"); m2.setEnd("b"); Mon m3 = new Mon(); m3.setStart("C"); m3.setEnd("c"); Mon m4 = new Mon(); m4.setStart("A"); m4.setEnd("c");</pre><p> 这是 ArrayList。</p><pre> List&lt;Mon&gt; list = new ArrayList(); list.add(m1);list.add(m2);list.add(m3);list.add(m4);</pre><p> 现在我想按起始属性和结束属性对列表进行分组,但基于末尾包含“;”,所以我也想将 m1 和 m2 放入同一组,因为 m1.end 包含 m2.end ,但 m4 在另一组中,因为 m4 开始和结束与 m1,m2 不同。</p><p> 我尝试使用 Collectors.groupingBy 按开始分组</p><pre>Map&lt;String, List&lt;Mon&gt;&gt; map = list.stream().collect(Collectors.groupingBy(d -&gt; d.getStart()));</pre><p> 但这不是我想要的 Output 的结果,如下所示:</p><pre> key: Aa;b OR Ab, value: m1, m2 key: Cc, value: m3 key: Ac, value: m4</pre><p> 有什么方法可以实现它,jdk8 stream function 更好</p><p>非常感谢</p></div></object> JDK8 编译慢 ActiveJDBC和JDK8流
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM