首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >idlj-maven-插件和包翻译

idlj-maven-插件和包翻译
EN

Stack Overflow用户
提问于 2012-08-28 04:19:15
回答 3查看 2.5K关注 0票数 2

我正在尝试用idlj-maven-plugin在Maven项目中包含一个Corba .idl文件。.idl文件指定了某个模块,比如

代码语言:javascript
复制
module Tester
{
  interface Test {
    void sayHello();
  }
}

我希望生成的类属于包com.mycompany.tester。我试过使用

代码语言:javascript
复制
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>idlj-maven-plugin</artifactId>
        <version>1.2.1</version>
        <executions>
          <execution>
            <goals>
              <goal>generate</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
            <debug>true</debug>
            <compiler>jacorb</compiler>
            <sourceDirectory>../../idl</sourceDirectory>
            <source>
                <packageTranslations>
                    <packageTranslation>
                        <type>Tester</type>
                        <package>com.mycompany.tester</package>
                    </packageTranslation>
                </packageTranslations>
            </source>
        </configuration>
      </plugin>

但它似乎完全没有效果。我还尝试将idlj用作<compiler>,或者使用

代码语言:javascript
复制
                <additionalArguments>
                    <additionalArgument>
                        -i2jpackage Tester:com.mycompany.tester
                    </additionalArgument>
                </additionalArguments>

但似乎没有任何效果。

有什么想法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-28 05:01:51

我已经设法让一切都以这种方式工作:

代码语言:javascript
复制
   <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>idlj-maven-plugin</artifactId>
        <version>1.2.1</version>
        <executions>
          <execution>
            <goals>
              <goal>generate</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
            <debug>true</debug>
            <compiler>jacorb</compiler>
            <sourceDirectory>../../idl</sourceDirectory>
            <sources>
                <source>
                    <additionalArguments>
                        <list>-i2jpackage</list>
                        <list>Tester:com.mycompany.tester</list>
                    </additionalArguments>
                </source>
            </sources>
        </configuration>
      </plugin>

在使用<additionalArguments>时,我使用的是<compiler>idlj</compiler>

代码语言:javascript
复制
<additionalArguments>
    <list>-pkgTranslate</list>
    <list>Tester</list>
    <list>com.mycompany.tester</list>
</additionalArguments>
票数 4
EN

Stack Overflow用户

发布于 2015-02-16 09:26:05

使用idlj命令更容易

代码语言:javascript
复制
====  your tester.idl  ====

module tester
{
    interface Test {
        void sayHello();
    }
}

===========================

您可以使用带有选项-pkgPrefix的idlj将java文件生成到某个包,如下所示

代码语言:javascript
复制
idlj -pkgPrefix tester com.mycompany -fall tester.idl
票数 0
EN

Stack Overflow用户

发布于 2020-03-24 01:10:22

尽管idlj-maven-plugin用法页面中的示例提供了不同的建议,但您必须将源选项包装在sources元素中:

代码语言:javascript
复制
<configuration>
    <compiler>jacorb</compiler>
    <sources>
        <source>
            <packagePrefix>com.acme</packagePrefix>
        </source>
    </sources>
</configuration>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12149000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档