在 NetBeans 中编译 Maven 项目时 Ant 无法找到环境变量

Posted

技术标签:

【中文标题】在 NetBeans 中编译 Maven 项目时 Ant 无法找到环境变量【英文标题】:Ant not able to find environment variables when compiling Maven project in NetBeans 【发布时间】:2012-03-06 17:41:17 【问题描述】:

我正在尝试在 Ubuntu 机器上编译一个开源应用程序“OSCAR McMASTER”。我使用 NetBeans 作为我的编辑器。如果我从控制台使用以下命令,它将成功编译:

mvn clean install

但如果我尝试从 IDE 构建它,则会显示以下异常:

Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.3:run(jspc)
on project oscar: An Ant BuildException has occured: The following error occurred
while executing this line: /home/admin/oscar11/oscar/jspc.xml:18: Cannot find 
/home/admin/oscar11/oscar/$env.CATALINA_HOME/bin/catalina-tasks.xml imported 
from /home/admin/oscar11/oscar/jspc.xml

虽然我已经在我的.bashrc 文件中定义了CATALINA_HOMECATALINA_BASE 变量并且还重新启动了机器。

编辑:- 我在构建文件中使用了以下消息:

<echo message="$env.CATALINA_HOME"/>
<echo message="$env.JAVA_HOME"/>

它正确输出JAVA_HOME 的值,但对于CATALINA_HOME 它显示$env.CATALINA_HOME

【问题讨论】:

你能以详细模式(-v)执行ant脚本吗,这应该列出所有ant知道的属性 @oers 肯定会试试这个。我是否需要在 .bashrc 以外的其他位置指定变量,以便 IDE 或 ANT 能够读取它们? 我觉得应该可以,你用的是哪个版本的ant? doc 表示 ant 1.8.2 在读取环境变量时有所改进。 另见this question @oers 从控制台编译正常,但我不知道如何在IDE中设置-v参数:( 【参考方案1】:

我在.bashrc 中定义了CATALINA_HOMECATALINA_BASE 变量。但是当我从启动器启动NetBeans 时,它无法找到环境变量。我从控制台(终端)启动它,一切都很好。

【讨论】:

【参考方案2】:

如果您使用 Gnome(例如在 Ubuntu 上),您需要在 ~/.gnomerc 中设置环境变量,以将它们传递给从桌面启动的应用程序。

见:How do I pass an environment variable to a Netbeans Makefile on Ubuntu?

【讨论】:

以上是关于在 NetBeans 中编译 Maven 项目时 Ant 无法找到环境变量的主要内容,如果未能解决你的问题,请参考以下文章

使用 maven 编译 netbeans Web 服务项目时出错

将 maven 项目导入 netbeans

在 netbeans 7 中,如何在构建 maven 项目时跳过测试并添加 maven 附加参数?

使用 netbeans 和 maven 创建 JApplet

如何在 Maven 项目中使用 -Xlint:unchecked 进行编译?

NetBeans (maven) 项目:checkstyle-beans vs maven-checkstyle-plugin