小编Vic*_*cki的帖子

相同的Java源代码编译为二进制不同的类

任何人都可以解释相同的Java源代码如何最终编译为二进制不同的类文件?

问题来自以下情况:

我们有一个相当大的应用程序(800多个类)已经分支,重组然后重新集成回主干.在重新集成之前,我们将主干合并到分支中,这是标准过程.

最终结果是一组带有分支源的目录和一组带有主干源的目录.使用Beyond Compare,我们能够确定两组源相同.但是,在编译时(使用IntelliJ v11中托管的maven的相同JDK),我们注意到大约十几个类文件是不同的.

当我们为每对明显不同的类文件反编译源代码时,我们最终得到了相同的java源代码,因此就最终结果而言,它似乎并不重要.但为什么只有少数文件不同?

谢谢.


额外的想法:

如果maven/javac以不同的顺序编译文件,可能会影响最终结果吗?

java compilation

11
推荐指数
1
解决办法
2276
查看次数

Maven cxf 插件日志记录

我正在使用 Apache cxf maven 插件 (v3.3.0) 成功生成 java 包装器。

但是,maven 构建的输出包含来自wsdl2java 的数千个 DEBUG 日志记录行,我无法删除这些行。是否有额外的参数或其他方法可以使过程静音,以便我只收到成功(或可能失败)的消息?

<plugin>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-codegen-plugin</artifactId>
    <version>${cxf.version}</version>
    <executions>
        <execution>
            <id>generate-sources</id>
            <phase>generate-sources</phase>
            <configuration>
                <sourceRoot>${project.build.directory}/generated-sources/cxf</sourceRoot>
                <defaultOptions>
                    <autoNameResolution>true</autoNameResolution>
                </defaultOptions>
                <wsdlOptions>
                    <!--Some Web Service -->
                    <wsdlOption>
                        <wsdl>https://some/web/service.wsdl</wsdl>
                        <extraargs>
                            <extraarg>-client</extraarg>
                            <extraarg>-quiet</extraarg>
                            <extraarg>-p</extraarg>
                            <extraarg>com.foo.bar</extraarg>
                        </extraargs>
                    </wsdlOption>
                </wsdlOptions>
            </configuration>
            <goals>
                <goal>wsdl2java</goal>
            </goals>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

cxf maven-plugin

9
推荐指数
2
解决办法
675
查看次数

标签 统计

compilation ×1

cxf ×1

java ×1

maven-plugin ×1