Java 如何在NetBeans上编辑库源文件?

Java 如何在NetBeans上编辑库源文件?,java,Java,我正在做基于SSJ(JAVA中的随机模拟)库的JAVA项目。在我的项目中,我按照要求的步骤导入了SSJ库文件和源文件 在项目的Libraries分支中查看SSJ库文件时,仅显示类文件,但当我打开它们时,我可以查看源代码(以前我无法查看源代码,因为我没有导入源代码),因此我假设所有内容都已正确导入 当我运行随库提供的示例时,一切都正常运行,正如预期的那样。但是如果我尝试更改库的源代码,例如更改输出上的文本,那么对源文件所做的更改不会反映在java程序的输出中 有没有关于我可能做错了什么的暗示 我理

我正在做基于SSJ(JAVA中的随机模拟)库的JAVA项目。在我的项目中,我按照要求的步骤导入了SSJ库文件和源文件

在项目的Libraries分支中查看SSJ库文件时,仅显示类文件,但当我打开它们时,我可以查看源代码(以前我无法查看源代码,因为我没有导入源代码),因此我假设所有内容都已正确导入

当我运行随库提供的示例时,一切都正常运行,正如预期的那样。但是如果我尝试更改库的源代码,例如更改输出上的文本,那么对源文件所做的更改不会反映在java程序的输出中

有没有关于我可能做错了什么的暗示

我理解这可能很难理解或测试,因为我不能为这件事创建和测试SSCCE。库文件托管在这里(http://www.iro.umontreal.ca/~simardr/ssj/ssj-20120216.zip)和这里的源代码(http://www.iro.umontreal.ca/~simardr/ssj/ssj source.html)


提前感谢您的帮助

将源代码添加到库中是为了调试和编写文档。这并不意味着Netbeans将自动检测更改并重新编译类

您应该为库本身创建一个项目,以便从源代码重新创建它。更改是,如果您有源代码,将有一个
build.xml
pom.xml
,其中包含编译库的步骤,并允许创建Java自由格式项目或具有现有pom的项目

然后删除对库本身的引用,并向项目添加依赖项

另一种选择是将库源添加到您正在使用的同一个项目中(并且,再次删除对库的引用),但我不建议这样做,除非它是一个非常小的简单库

编辑。特定ssj信息。

ssj
是一个库,其中原始源代码位于
.tex
文件中,它需要几个程序来生成
.java
文件,然后编译它们。所有这些信息都可以在
COMPILE.txt
原始文件中找到

由于源代码发行版包含
.java
文件,因此可以仅使用Netbeans生成
.jar
,但需要修改
build.xml
以仅编译java源文件。另外,在创建Java自由格式项目时,有必要选择
lib
作为构建项目的目标


这里是Netbeans 7.1从Java源代码编译的一个示例。

为了从*.tex文件创建新的*.Java文件,您需要发行版中提供的tcode.jar。您是否已将tcode.jar作为外部jar添加到项目中


umontreal.iro.lecuyer.tcode.Texjava在tcode.jar中

当您为库添加源代码时,这是为了调试目的,并不意味着Netbeans将检测更改并重新编译。要么您必须将源添加到项目中并删除jar引用,要么您需要为库本身创建一个项目并将该项目添加为引用。@madth3您的评论对我来说是一个完整而正确的答案,最好是这样发布。@fvu感谢您的鼓励。我曾试图将库源代码添加到同一个项目中,但由于它不是一个小库,因此不可行!源代码可用,并且确实有一个build.xml文件!然而,我确实尝试从现有库创建一个Java自由格式项目,但失败了,因为我无法编译该项目(不确定是否应该编译)。这意味着,我可以从导入库jar文件的前一个项目向库添加一个项目。我明白你的意思,但似乎无法理解!您可以将库项目本身作为依赖项添加到项目中,而忽略库列表。通过创建Java自由格式项目,然后将其作为依赖项添加到我的项目中,对吗?正如我所说的,我尝试过,但无法添加它!文件上有一些警告,当我试图编译时,我得到的结果是:D:\WORK\ISEP\MESTRADO\TESE\JAVA\Libraries\SSJ\SSJ-2.5-source\SSJ-2.5\build.xml:30:taskdef类umontreal.iro.lecuyer.tcode.Texjava无法使用类加载器和类加载器[]找到,阅读
COMPILE.txt
似乎不幸的是
ssj
不是一个常规的Java库。您是否尝试调用
build.xml
中的
lib
任务而不是默认任务?