maven跨平台编译thrift

在java开发中,如果需要编译thrift文件时,需要使用插件maven-thrift-plugin,然而这个插件不支持跨平台(比如开发在mac,运行在linux上),这就对编译环境提出比较高的要求。然而我们可以通过简单的配置pom.xml完成。

    <build>
        <extensions>
            <extension>
                <!-- 获取平台类型 -->
                <groupId>kr.motd.maven</groupId>
                <artifactId>os-maven-plugin</artifactId>
                <version>1.5.0.Final</version>
            </extension>
        </extensions>
        <plugins>
            <plugin>
                <groupId>org.apache.thrift.tools</groupId>
                <artifactId>maven-thrift-plugin</artifactId>
                <version>0.1.11</version>
                <configuration>
                    <thriftExecutable>${basedir}/tool/thrift_0.9.2_${os.detected.name}</thriftExecutable>
                    <thriftSourceRoot>idl</thriftSourceRoot>
                    <generator>java</generator>
                </configuration>
                <executions>
                    <execution>
                        <id>thrift-sources</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

插件os-maven-plugin:是为了获取平台类型,例如window,linux,osx等,通过${os.detected.name}获取类型
在目录tool中提前放号thrift工具,即可:

猜你喜欢

转载自blog.csdn.net/xxb249/article/details/114038072
今日推荐