Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Netbeans 尝试编译JVisualVM时生成失败_Netbeans_Ant_Jvisualvm - Fatal编程技术网

Netbeans 尝试编译JVisualVM时生成失败

Netbeans 尝试编译JVisualVM时生成失败,netbeans,ant,jvisualvm,Netbeans,Ant,Jvisualvm,在尝试构建JVisualVM时,我一直遵循上所示的说明 我签出了我硬盘的主干,我下载了它的内容并将其解压缩到visualvm/目录中,如有要求: 要构建visualvm核心工具,您需要这里提供的NetBeans 7.3平台和探查器二进制文件。这些二进制文件必须解压缩到trunk/visualvm目录中。您可以使用ant-run或ant-build-zip构建或运行VisualVM 执行ant run时,我得到一个: compile: [mkdir] Created dir: C:\Use

在尝试构建JVisualVM时,我一直遵循上所示的说明

我签出了我硬盘的主干,我下载了它的内容并将其解压缩到
visualvm/
目录中,如有要求:

要构建visualvm核心工具,您需要这里提供的NetBeans 7.3平台和探查器二进制文件。这些二进制文件必须解压缩到trunk/visualvm目录中。您可以使用ant-run或ant-build-zip构建或运行VisualVM

执行
ant run
时,我得到一个:

compile:
    [mkdir] Created dir: C:\Users\user\Desktop\jvisualvm\visualvm\applicationviews\build\classes
 [nb-javac] Compiling 19 source files to C:\Users\user\Desktop\jvisualvm\visualvm\applicationviews\build\classes
 [nb-javac] warning: [options] bootstrap class path not set in conjunction with -source 1.5
 [nb-javac] C:\Users\user\Desktop\jvisualvm\visualvm\applicationviews\src\com\sun\tools\visualvm\application\views\threads\ThreadMXBeanDataManager.java:117: e
rror: cannot find symbol
 [nb-javac]             super(dummyLong, CommonConstants.SERVER_RUNNING, CommonConstants.SERVER_PROGRESS_INDETERMINATE);
 [nb-javac]                                             ^
 [nb-javac]   symbol:   variable SERVER_RUNNING
 [nb-javac]   location: interface CommonConstants
 [nb-javac] C:\Users\user\Desktop\jvisualvm\visualvm\applicationviews\src\com\sun\tools\visualvm\application\views\threads\ThreadMXBeanDataManager.java:117: e
rror: cannot find symbol
 [nb-javac]             super(dummyLong, CommonConstants.SERVER_RUNNING, CommonConstants.SERVER_PROGRESS_INDETERMINATE);
 [nb-javac]                                                                             ^
 [nb-javac]   symbol:   variable SERVER_PROGRESS_INDETERMINATE
 [nb-javac]   location: interface CommonConstants
 [nb-javac] Note: Some input files use unchecked or unsafe operations.
 [nb-javac] Note: Recompile with -Xlint:unchecked for details.
 [nb-javac] 2 errors
 [nb-javac] 1 warning
我甚至安装了Netbeans 7.3,但这似乎没什么帮助


我对这些事情很陌生,我是不是遗漏了什么?

你提到你“对这些事情很陌生”,那么我可以问一下你是否有理由要建造主干吗?大多数情况下,在使用SVN进行源代码管理时,工作流包括在下标记发布。标记的发布通常已经过测试,并且满足了被认为适合发布的最低测试标准,因此您可能更容易构建其中一个标记

为自己构建/trunk并没有什么错,但它应该被视为一个“不稳定/正在工作”的构建,所以您应该预料到会遇到问题

正如您可能已经知道的,有预编译的二进制文件可在上下载。如果您的操作系统没有列出二进制文件,您可能可以通过软件包管理器找到它(例如,Ubuntu上的
sudo apt get install visualvm


也就是说,如果你想:

在这种情况下,编译器会告诉您,它无法在
CommonConstants
类中找到正在运行的
SERVER\u和不确定的
SERVER\u符号。这些在类的第117行中引用。如果您查看该类,您将看到
import org.netbeans.lib.profiler.global.CommonConstants
语句,它告诉我们CommonConstants来自netbeans。如果我们检查,我们可以看到开发人员做出了旨在使VisualVM与NetBeans 7.3兼容的更改。因此,有几种可能性:

  • 开发人员错了,实际上是用其他版本的NetBeans(可能是预发行版等)编译的。如果您发现这种情况,您应该提交一份bug报告(如果可能的话,还应该提交一个补丁)
  • 您试图针对错误版本的NetBeans进行编译
  • 类路径/构建脚本有问题
  • 让我们检查一下第二和第三题。我们可以使用链接到的二进制文件,通过使用或类似的实用程序(或通过谷歌搜索等),找出CommonConstants类所在的jar:

    我们看到这个类位于两个地方,所以下一步要做的是检查两个类文件并确保它们都有常量。使用解压实用程序(例如)展开jar文件,并使用反编译器(我喜欢)验证类是否具有常量:


    你链接到的版本在我的机器上看起来还可以,所以不幸的是,现在你必须进一步调查。在进行编译的Ant脚本中,这些JAR中的一个或两个都在类路径上吗?通过环境变量在类路径上有不同版本的jar吗?这里有很多可能性,所以你必须做一些调查。如果所有这些看起来都需要大量工作,那么我建议您使用一个预编译的二进制文件,或者切换到标记构建。

    看起来您是针对NetBeans 7.2编译的。在编译VisualVM项目之前,您是否在NetBeans中打开了它?如果是,请检查为NetBeans中的顶级VisualVM项目设置了哪个NetBeans平台。您应该在nb73_VisualVM_14012013.zip中针对NetBeans平台编译VisualVM。要检查安装是否正确,请尝试以下操作:

  • 如果在NetBeans中打开了VisualVM,请关闭NetBeans
  • 在visualvm源目录树中查找所有trunk/visualvm/*/nbproject/private目录并删除private目录
  • 使用命令行中的
    ant运行
  • 如果可行,打开NetBeans,将trunk/visualvm/NetBeans注册为NetBeans平台,并将其设置为visualvm顶级项目的平台