Java/Ubuntu - 在 Windows 上的主要工作之外打印,但在 Ubuntu 14.04 上不执行任何操作
Posted
技术标签:
【中文标题】Java/Ubuntu - 在 Windows 上的主要工作之外打印,但在 Ubuntu 14.04 上不执行任何操作【英文标题】:Java/Ubuntu - Print outside of main works on Windows but does nothing on Ubuntu 14.04 【发布时间】:2016-08-20 23:52:31 【问题描述】:我有一个 Intellij 项目。我在 Windows 上编译(“制作”)它,并将其发送到运行 Java 1.8 的 Ubuntu 14.04 远程服务器。
我的问题是main
方法之外的System.out.println() 没有打印任何内容。
我在这个问题上花了几个小时,我可以确保:
我知道这些方法会被执行,因为它们会引发警告:Aug 20, 2016 7:35:36 PM org.apache.pdfbox.cos.COSDocument finalize
WARNING: Warning: You did not close a PDF Document
当执行结束时,我总是得到以下汇率输出:[]
打印我调用它们的方法并将打印行放在这些方法的开头,不会做任何事情。
注意
为了执行我的项目,我使用:java MyProject.TestAlgo
,其中 TestAlgo 是主类。
编辑:
我希望输出是一个列表,例如:[1.0, 2.3, ..., 5.4]
,但我得到[]
我认为问题不是编程问题,因为每当我在运行 Windows 的计算机上编译它时,我都会从main
之外获得打印。
当我编译项目并在 Ubuntu 远程服务器 上运行它时,除了来自 main
的打印以及来自 main 外部的方法引发的警告之外,我看不到任何输出班级。
所有尝试打印并在 main 中调用的方法都声明为 static
。
【问题讨论】:
我看不到你的ratePDF
在你的主方法中被调用的地方。
您的main
由于语法问题仍然无法编译。如果您向我们展示您的真实代码,那就太好了。
代码缩写为[...]
的作用是什么?另外,ratePDF
中的打印语句是否打印任何内容?简而言之,预期的输出是什么,你得到了什么?
@tkausl 问题是我还在rateElementsDouble(filePDF, listElements)
方法中调用了php。 @fge 我正在编辑,所以我的问题会更清楚。
【参考方案1】:
已解决:
我在 Windows 上使用 1.8.0.101 JDK 版本编译 Java,并在 Ubuntu 上使用 1.8.0.91 运行它,这(我认为)一定会造成版本冲突..
我通过更新 Java JRE 解决了这个问题,因此我在 Windows 和 Ubuntu 上拥有相同版本的 Java。
【讨论】:
以上是关于Java/Ubuntu - 在 Windows 上的主要工作之外打印,但在 Ubuntu 14.04 上不执行任何操作的主要内容,如果未能解决你的问题,请参考以下文章