我目前正在学习如何使用Maven构建我用Java编写的项目。以前,我只使用javac
来编译我的项目,我已经习惯了它产生的错误消息。我尝试使用mvn compile
和javac
手动编译以下错误的测试程序:
public class App {
public static void main( String[] args )
{
System.out.print(a);
}
}
Javac
产生:
App.java:5: error: cannot find symbol
System.out.print(a);
^
symbol: variable a
location: class App
1 error
但是< code > mvn compiler 会产生这个结果(在一堆其他堆栈跟踪和输出中):
...
[ERROR] /home/htor/maven-test/cflat/src/main/java/no/uio/ifi/cflat/App.java:[5,25] error: cannot find symbol
[ERROR] -> [Help 1]
...
后者不如第一条错误消息有用,并且它不包含来自javac
的完整错误消息。我尝试过使用-e
和-X
,但错误报告完全相同,只是周围有更多噪音。
如何从Maven的错误消息中获取完整的Javac错误消息?
经过进一步搜索,似乎这种行为是由Maven编译器插件中的bug引起的。这个问题的解决方案解决了我的问题:maven“找不到符号”消息无济于事。只需将其添加到您的pom.xml
文件中即可使用最新的编译器
插件:
<project>
...
<build>
....
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
问题内容: 我正在尝试(从命令行)编译一个Java包,该包会导入我自己的另一个包。我正在网上关注教程,但是当我尝试编译最终的Java文件(CallPackage.java)时似乎出现错误。 这是文件结构: 这是CallPackage.java: 这是HelloWorld.java: 尝试的步骤 转到子包并使用编译HelloWorld.java 。 转到test_directory并使用编译Call
问题:无法使用带有JDK 1.8的Jenkins构建Spring maven项目 描述:我使用Jenkins构建我的Spring项目,由Maven管理。我已经使用JDK安装选项在Jenkins中配置了Java 1.7和1.8。当在构建配置中选择Java 1.7并运行构建时,构建过程是成功的。但当我在构建配置中选择Java 1.8并运行构建时,构建过程会失败。 下面是 jenkins 控制台输出**
我使用的是jaxb-api,V2.2.9如果有关系的话。Maven依赖项是 下面是正在发生的事情的更详细的输出... mojoSuccedeord.codehaus.mojo:sql-maven-plugin:1.5(create-test-db)mojoStarted org.apache.maven.plugin:maven-compiler-plugin:2.3.2(default-comp
问题内容: 我在Java编译器中遇到一个错误,该错误中提交用于编译的文件顺序可能导致代码无法编译。我对代码进行了深入研究,以找出可以重现该问题的最小代码量,从而生成了三个源文件(每个源文件一个类)。 通过以特定顺序使用javac参数可以重现该问题。简而言之,为了成功,必须始终在使用该Actions类的Program类之前对其进行编译,否则javac不能以一种明智的方式对其进行处理: 发生编译错误时
null 无法定位tools.jar。应该在/usr/lib/jvm/java-7-openjdk-amd64/lib/tools.jar中找到它 buildfile:/home/taylor/desktop/java/tcp/build.xml 构建-子项目:
我正在刮网页使用JSoup库通过选择类属性,其中包含"nav"字符串。 这是获取网站超文本标记语言的代码: 正如您所看到的,id=“varPreviewMenu”的ul元素包含Jsoup检索到的HTML不包含的li元素。 我怎样才能得到那些元素?