【问题标题】:Netbeans project to scripted buildNetbeans 项目到脚本构建
【发布时间】:2011-07-07 20:29:53
【问题描述】:

我正在尝试将 Netbeans 6.9.1 项目转换为脚本构建(没有 netbeans)。当然,它失败了(或者我不会寻求帮助)。

在失败中它说 org.apache.commons.httpclient 包不存在。 (当然,当我们在 Netbeans 中运行构建时它起作用了)。

现在我知道 commons-httpclient.jar 文件在我的项目结构中的确切位置,但我似乎无法通过 ant 构建文件和 netbeans 属性文件告诉编译器。

也许与此相关的是当我运行“ant -v”来构建我的软件时,它说,

尚未设置属性 lib.mystuff.classpath。我猜这个变量很重要,因为

文件 nbproject/project.properties 在其 javac.classpath 的定义中使用 lib.mystuff.classpath,这当然会告诉 Java 编译器在哪里可以找到 JAR .

所以...当将 Netbeans 项目移动到独立于 netbeans 的脚本构建时,构建脚本如何设置这些属性?另外,如何确保 jar 文件包含在 ant 构建中?

感谢我能得到的任何帮助,因为我是 Java 新手。

接受来自 vkraemer 的回答后更新:

有一些为生产软件构建脚本的最佳实践:

  1. 将构建所需的所有内容放在一个目录树下。 (Netbeans = 失败)
  2. 将所有内容置于源代码控制中。 (我做到了)
  3. 构建脚本的第一行应该清除所有环境变量。
  4. 构建脚本的下一部分应将所有环境变量显式设置为已知有效的值。
  5. 构建的下一部分应该能够使用命令行程序(例如 javac、ant、cc 等)执行,并且不能依赖于启动 IDE,例如 Eclipse 或 Netbeans。

遗憾的是,Netbeans 让这变得困难。

【问题讨论】:

  • 是什么样的 NetBeans 项目? Web 应用程序、Java 应用程序等...

标签: netbeans ant


【解决方案1】:

我快速浏览了一个 Java 应用程序项目,发现以下内容...

javac.classpath = ${libs.MyStuff.classpath}

libs.MyStuff.classpath 在 %HOME%/.netbeans/6.9.1/build.properties 中定义。

您可以通过以下方式获得...

ant -Dlibs.MyStuff.classpath=c:\a\b\c.jar

如果您在 NetBeans 中创建的 MyStuff 库中有多个 jar 文件,则需要做更多工作。

【讨论】:

  • 谢谢。这正是我所需要的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多