Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.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
Java 如何创建一个包含jedit源代码的netbeans 7.3项目?_Java_Netbeans_Java 6_Jedit - Fatal编程技术网

Java 如何创建一个包含jedit源代码的netbeans 7.3项目?

Java 如何创建一个包含jedit源代码的netbeans 7.3项目?,java,netbeans,java-6,jedit,Java,Netbeans,Java 6,Jedit,我认为这是一个简单的问题,因为已经有一个关于这个的wiki主题,尤其是wiki已经过时了。这里有一个关于Stackoverflow的问题,它只引用了这些现在已经过时的wiki主题。netbeans wiki必须适用于某些旧版本的netbeans UI,我使用的是netbeans 7.3 如果我尝试使用7.3中的现有源代码选项,它会假定您已经不能拥有build.xml,因此它会告诉您无法继续: 为了便于说明,可以展示一些jedit源代码文件夹的结构。 我有最新的jEdit源代码和5.0稳定的源代

我认为这是一个简单的问题,因为已经有一个关于这个的wiki主题,尤其是wiki已经过时了。这里有一个关于Stackoverflow的问题,它只引用了这些现在已经过时的wiki主题。netbeans wiki必须适用于某些旧版本的netbeans UI,我使用的是netbeans 7.3

如果我尝试使用7.3中的现有源代码选项,它会假定您已经不能拥有build.xml,因此它会告诉您无法继续:

为了便于说明,可以展示一些jedit源代码文件夹的结构。 我有最新的jEdit源代码和5.0稳定的源代码。项目布局大致如下所示:

      + jedit
        |
        +- org
        |
        +- net
        |
        +- test
        |
        +- de
        |
        ....
我已经找到了root build.xml所在的文件夹,但我无法按照wiki的说明进行操作,因为似乎不再存在具有现有ant build脚本选项的项目

现在我们尝试自由形式选项。。。而且它也不起作用…

到目前为止,自由格式项目的工作原理是允许您创建一个netbeans项目,但目录扫描会导致netbeans内部完全混乱。在项目树状图中添加了一系列路径为“.”的文件夹、5个重复的“.”文件夹副本和5个重复的“源程序包”条目。这可能与free-form的第二个问题有关,即它不会构建和运行jEdit,但会在尝试在netbeans之外构建时出现奇怪的错误消息:

项目窗格中的混乱使我无法导航或查看源结构:

而且它不会构建:

Processing /Users/admin/NetBeansProjects/jedit/trunk/build/test/merged-reports/TESTS-TestSuites.xml to /var/folders/59/mc8gzxfn1b98j389rkz4zjsc0000gs/T/null666107982
Loading stylesheet jar:file:/Applications/NetBeans/NetBeans%207.3.app/Contents/Resources/NetBeans/java/ant/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
: Error! The first argument to the non-static Java function 'replace' is not a valid object reference.
: Error! Cannot convert data-type 'void' to 'reference'.
: Fatal Error! Could not compile stylesheet
Failed to process /Users/admin/NetBeansProjects/jedit/trunk/build/test/merged-reports/TESTS-TestSuites.xml
/Users/admin/NetBeansProjects/jedit/trunk/build.xml:442: Errors while applying transformations: Fatal error during transformation
BUILD FAILED (total time: 35 seconds)
所以我放弃了自由形式的项目,因为它没有构建

在删除build文件夹和build.xml后,现在打开一个包含现有源的项目,这两个文件夹都不起作用…

如果我想导入项目源代码(只是java,没有build.xml,因为我删除了它),我会被困在这里:

我试着做什么?我尝试添加源文件夹,如
org
de
net
下的目录(请参阅我在问题中放置的源代码树)。但是,netbeans会自动向上遍历到源代码的根文件夹

我无法选择除根目录之外的任何文件夹,因为选择根目录下的文件夹会导致Netbeans总是在文件夹层次结构中向上移动,直到它到达它想要的位置。不会有任何不同。

这反过来又导致netbeans抱怨它决定对我做的事情,那就是它不能包括
jedit/test
,因为它使用
jedit
作为根源文件夹。我选择的任何东西(不管jedit/下面有多少文件夹)都不会导致netbeans做任何不同的事情。它坚持通过遍历子目录来提供帮助。我开始认为,现实世界中的java用户可能会以netbeans无法处理的方式组织他们的源代码

其他信息

  • 使用
    ant
    从shell构建,而不是默认的
    build.xml
    附带jedit源代码,只要您拥有现代版本的ant,就可以正常工作。重新安装ant修复了我的命令行构建功能

  • 我发现我必须先从apache网站安装最新的
    ant
    版本,然后我的Mac OS X机器才能在命令行上构建jEdit 5.0。我的netbeans应用程序包中的
    ant
    版本可能不同

  • 我正在使用OSX10.8和安装的HavaJava1.5、1.6和1.7,目前是针对Java1.6构建的

  • 在我看来,Netbeans以沉着和优雅的态度打开Maven项目,这又是因为Maven项目通常遵循标准的java目录布局。基于Ant的构建似乎也能很好地导入到Netbeans可以理解的命名和布局标准的程度,但jEdit似乎是Netbeans无法以其当前形式干净地处理的东西


我无法评论使用Netbeans for Java,因为我只使用它编写PHP代码。但是,当加载带有现有PHP源代码的项目时,我可以将项目配置文件保存在项目中或其他位置(有时我会将项目配置文件保存到我的windows配置文件中,因为源代码位于linux web服务器上的samba共享上)

我无法评论使用Netbeans for Java,因为我只使用它编写PHP代码。但是,当加载包含现有PHP源代码的项目时,我可以将项目配置文件保存在项目中或其他位置(有时我会将项目配置保存到我的windows配置文件中,因为源代码位于linux web服务器上的samba共享上)

屏幕截图表明
/Users/admin/NetBeansProject/jedit/trunk
已包含
build.xml
文件。您应该尝试在NetBeans中创建一个“自由形式项目”,而不是“使用现有源代码的新Java项目”


如果不想重用现有的
build.xml
文件,可以将源文件复制到新目录。特别是,您应该将它们放在NetBeans项目的空目录的
src
子目录中。然后您可以创建一个“具有现有源代码的新Java项目”除非需要添加自定义任务或自定义NetBeans生成的默认任务,否则不需要创建自己的Ant构建文件。

屏幕截图表明
/Users/admin/NetBeansProject/jedit/trunk
已经包含
build.xml
文件。您应该尝试在NetBeans中创建一个“自由形式项目”,而不是“使用现有源代码的新Java项目”

如果不想重用现有的
build.xml
文件,可以将源文件复制到新目录。特别是,你的