问题标签 [jdk1.7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6212 浏览

pdf-generation - 如何将 iText 添加到我的 netBeans 项目中?

我使用的是Netbeans 8.0.2,我试图将我的输出作为 PDF 文件。在快速的谷歌搜索中,我了解到iText可以帮助我做到这一点。但是如何将 iText 包导入到我的项目中?
我应该如何导入我下载的包(最新)。

0 投票
1 回答
174 浏览

java - 无法从 RecursiveAction 类调用 coInvoke 函数

我编写了一个简单的代码以使用 Java 分叉连接功能并行运行。

我正在使用 Java 版本 7 (JDK 1.7)

我有一个问题,但是无法调用 coInvoke。

这应该是可接受的用途,因为 forkedPotential 扩展了 RecursiveAction。而 Alt-Return 并没有给我任何有用的指导。

我尝试过 coInvoke 的其他用途,例如

但没有喜悦。

我不知道为什么找不到这个 coInvoke 函数,因为它是 RecursiveAction 中的一个函数。

任何意见,将不胜感激。

非常感谢。

0 投票
3 回答
2200 浏览

java - 为什么 File.exists() 在多线程环境中表现异常?

我有一个在 java JDK 1.7 下运行的批处理。它在带有 RHEL、2.6.18-308.el5 #1 SMP 的系统上运行。

此过程从数据库中获取元数据对象列表。从该元数据中,它提取文件的路径。该文件可能实际存在也可能不存在。

该进程使用 ExecutorService ( Executors.newFixedThreadPool()) 来启动多个线程。每个线程运行一个 Callable,如果该输入文件存在则启动一个读取该文件并写入另一个文件的进程(并记录结果),如果该文件不存在则不执行任何操作(记录该结果除外)。

我发现这种行为是不确定的。尽管每个文件的实际存在自始至终都是不变的,但运行此过程并不能给出一致的结果。它通常会给出正确的结果,但偶尔会发现一些确实存在的文件不存在。如果我再次运行相同的进程,它会发现它之前说的文件不存在。

为什么会发生这种情况,是否有另一种更可靠的方法?在其他线程尝试读取目录时在多线程进程中写入文件是错误的吗?较小的线程池会有所帮助(目前为 30 个)吗?

更新: 这是在这种情况下工作线程调用的 unix 进程的实际代码:

更新#2:

我尝试过从 java.io.File.exists() 切换到 java.nio.Files.exists() 的实验,这似乎提供了更高的可靠性。我还没有看到多次尝试的失败情况,和以前一样,大约有 10% 的时间发生。所以我想我想知道 nio 版本在处理底层文件系统的方式上是否更健壮。 这一发现后来被证明是错误的。nio 在这里没有帮助。

更新#3: 经过进一步审查,我仍然发现发生相同的故障情况。所以切换到nio并不是万能的。通过将执行程序服务的线程池大小减少到 1,我获得了更好的结果。这似乎更可靠,并且没有机会一个线程读取目录,而另一个线程正在启​​动一个写入相同的进程目录。

我尚未调查的另一种可能性是,将输出文件放在与输入文件不同的目录中是否会更好。我将它们放在同一个目录中是因为它更容易编码,但这可能会造成混淆,因为输出文件的创建会影响与输入目录扫描相同的目录。

更新#4: 重新编码以便将输出文件写入与输入文件(正在检查其存在)不同的目录并没有特别帮助。唯一有帮助的变化是 ExecutorService 线程池大小为 1,换句话说,不是多线程这个操作。

0 投票
2 回答
1237 浏览

java - java -fullversion 中的 b 表示什么?

当我们使用java -fullversion 时,我们会得到类似 java full version "1.7.0_45-b18" 的输出。

java完整版中的这个b18是什么?

我仔细阅读了一些 oracle java 文章,这些文章说它表示构建版本。那么这个构建版本应该是什么?

我还看到http://bugs.java.com/上的一些错误 表示它们是从更高版本向后移植的。例如:http ://bugs.java.com/bugdatabase/view_bug.do?bug_id=8018840

它说“受影响的版本:7u45”和“固定版本:7u45 (b01)”。

那么这个 Fixed Versions: 7u45 (b01) 表示什么?这是否意味着它已在相同 java 版本的某些更高版本中修复?

同样正如我当前的 java -fullversion 命令所说:"1.7.0_45-b18"。那么这是否意味着 7u45 有 18 种不同的构建?

0 投票
4 回答
17590 浏览

java - 在 windows 中安装和切换 java 7 和 java 8

我在寡妇身上,也在使用日食。目前我正在使用 java 7。现在我想使用 java 8。但我无法卸载 java 7,因为我的一些旧项目正在使用 java 7。

那么如何同时安装两个 java 版本并在这些版本之间切换。

我只希望某些特定项目将使用 java 8。

0 投票
0 回答
1088 浏览

java - 启动错误:应用程序无法在 Android Studio 中以无头模式启动

我在 Ubuntu 中使用 Android Studio。几天前,我收到了 Ubuntu 的更新。我更新了我的操作系统。之后我无法从桌面图标启动 android studio。然后我尝试使用这个从终端启动sudo ./studio.sh。在此之后我开始收到这样的错误。 'tools.jar' seems to be not in Android Studio classpath. Please ensure JAVA_HOME points to JDK rather than JRE.为了解决这个问题,我将我的 JAVA_HOME 路径设置为 jdk。现在,当我尝试从终端启动 android studio 时,它显示Startup Error: Application cannot start in headless mode我不知道如何解决这个问题,请帮忙。

我的 Java 版本

java -version

java version "1.7.0_95"

OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-0ubuntu0.15.10.1)

OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

0 投票
2 回答
116 浏览

java - 想调试JDK的源码

我有同样的问题

我只是想弄清楚 hashmap 在内部是如何工作的。所以我想调试SDK的源代码。

目前。我想我在寻找compiled version with debug information什么Java SE 1.7。即使用编译javac -g

在此处输入图像描述

我想我不是唯一一个想要这样做的人。因此,任何知道该链接或之前已经这样做过的人。(对不起,我是个懒人。原谅我。)请为我分享工作成果。非常感谢。谢谢。

0 投票
0 回答
47 浏览

java - 在 CRXDE Lite 中创建的捆绑包中 SlingRepository 的解除绑定错误

我正在尝试使用:

在我在 cq5.6.1 的 CRXDE Lite 中创建的 java 服务中。当我尝试构建这个捆绑包时,它成功创建了 jar,没有任何错误。但是当服务运行时,我在日志中看到以下错误:

我在下面的帖子中读到有人遇到了类似的问题,但找不到解决方案。我确实尝试-XX:-UseSplitVerifier在 AEM 实例的启动命令中使用,但没有成功。

注意:我没有使用该命令启动新实例。我只启动了已经建立的实例。

同样显式添加 unbind 方法似乎不是一个有效的解决方案。

现在这肯定与 JAVA 版本有关,因为我们的服务在安装了 JAVA1.6 的机器上运行顺利,但在 JAVA 1.7 中出现上述错误。

0 投票
1 回答
40 浏览

eclipse - 从 Eclipse IDE 运行到 JDK 文件

我在Eclipse Mars IDE上开发软件,在 MS Windows 10 操作系统下,基于Java v7。现在我遇到了一些与 IDE 相关的配置问题。我想要的是,一旦我单击“进入”(或以其他方式),就可以从 IDE 运行 JDK 源代码。我以 IDE 提供的方式在路径中包含了“src.zip”。然而,当我尝试查看源代码时,IDE 显示“找不到源代码”。我想要这个功能,以便能够调试与我当前应用程序相关的一些东西。

问候

0 投票
1 回答
2048 浏览

java - 使用 64 位指令从命令行调用 jMeter 会丢失类

我们运行的是 32 位 JDK 和 jMeter 2.6,并且在模拟 8000 个用户分布在一小时内时遇到了堆内存问题。

我们升级到 64 位 Java 和 jMeter 2.12。

当我们从命令行运行请求 4Gb 堆(服务器有 32Gb)时,我们收到初始堆大小太大的消息。

当我们将选项 -d64 添加到 JVM_ARGS 时,我们不再收到有关堆大小的错误,但它不再找到类

指向目录似乎没有效果