通过Eclipse导出将选定的源文件包含在JAR中

时间:2012-06-15 19:17:28

标签: android eclipse jar

我正在构建一个SDK,它将通过JAR在没有源的情况下分发。一切正常,但我在接口类中使用的描述性参数名称在此过程中丢失了。

我的界面:

package com.example;
public interface ExampleInterfaceClass {
    /**
     * Method documentation
     * @param descriptiveParameter a parameter name I want included for anyone implementing this interface from a JAR
     */
    public void DoSomething(int descriptiveParameter);
}

当我使用source实现此接口时,'descriptiveParameter'会自动生成'descriptiveParameter':

public class ExampleImplementor implements ExampleInterfaceClass {
    @Override
    public void DoSomething(int descriptiveParameter) {
        // TODO Auto-generated method stub
    }
}

但是,当我从编译的JAR实现时,参数自动生成为“arg0”:

public class ExampleImplementFromJAR implements ExampleInterfaceClass {
    @Override
    public void DoSomething(int arg0) {
        // TODO Auto-generated method stub
    }
}

通过类似这样的问题提出了许多解决方案:Preserving parameter/argument names in compiled java classes,但没有一个解决方案能够让我做到1.在我的JAR中包含描述性参数,以及2.隐藏其他类的来源。有没有办法通过eclipse导出从JAR文件中的我的接口文件中包含源代码?如果没有,那么使用源对象子集生成JAR的下一个最简单的方法是什么?

1 个答案:

答案 0 :(得分:0)

我的猜测是不可能的。

我猜的原因是Android SDK本身有几个例子,其中自动填充方法获取名为arg0,arg1,arg2等的参数......

我想如果有可能携带描述性参数名称,那么在构建官方Android SDK中的组件时他们就会这样做。

话虽这么说,我的理论完全基于我自己在使用Android SDK / Eclipse时的观察,我没有特别读到任何地方都不可能。