我一直在尝试将javadoc包含到.aar库中,因此我不必手动编辑MetaData.xml文件中的每个方法参数名称。 到目前为止,我已经完成了this帖子中建议的所有内容,但我仍然无法使其发挥作用。
我像这样生成了javadoc:
javadoc -subpackages at -notree -noindex -nohelp -nonavbar -d javadoc
在我的构建输出中,JarToXml任务如下所示:
1>Task "JarToXml"
1> JarToXml Task
1> JavaOptions:
1> JavaMaximumHeapSize:
1> AndroidSdkDirectory: C:\Program Files (x86)\Android\android-sdk\
1> AndroidApiLevel: 17
1> MonoAndroidToolsDirectory: C:\Program Files (x86)\MSBuild\Xamarin\Android
1> JavaSdkDirectory: C:\Program Files (x86)\Java\jdk1.7.0_71\
1> OutputFile: obj\Release\api.xml
1> DroidDocPaths:
1> JavaDocPaths: JavaDocs\javadoc\
1> Java7DocPaths: JavaDocs\javadoc\
1> JavaDocs: {0}
1> JavaDocs\javadoc\index.html
1> AndroidApiLevel: 17
1> LibraryProjectJars:
1> obj\Release\__library_projects__\*.jar
1> SourceJars:
1> obj\Release\library_project_jars\\classes.jar
1> ReferenceJars:
1> C:\Users\Peter\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\classes.jar
1> C:\Users\Peter\AppData\Local\Xamarin\Android.Support.v4\21.0.3\embedded\libs\internal_impl-21.0.3.jar
我对" BuildDocumentation"的构建输出表示怀疑。任务,因为一方面,它添加了p0,p1等成员作为参数名称,另一方面,它没有找到正确的javadoc成员。
1> Member Added: protected virtual void SetLevelsForAutoFlash (int p0, int p1, int p2, int p3);
1> Member Added: public virtual void SetVibrateOnResult (bool p0);
....
1> Updating member anchor: hasNewImage()
1> javadoc-to-mdoc: Could not find JavaDoc for member: hasNewImage().
1> Updating member anchor: getNewImage()
1> javadoc-to-mdoc: Could not find JavaDoc for member: getNewImage().
....
为了确保我在.csproject中为JavaDocPaths和Java7DocPaths设置了一个属性,我将javadoc添加到项目中的子文件夹JavaDocs / javadoc中,我在其中设置了index的构建操作。 html到JavaDocIndex。
<PropertyGroup>
<Java7DocPaths>JavaDocs\javadoc\</Java7DocPaths>
</PropertyGroup>
<PropertyGroup>
<JavaDocPaths>JavaDocs\javadoc\</JavaDocPaths>
</PropertyGroup>
我正在使用Visual Studio 2013顺便说一句。我在这里缺少什么?
干杯,EtePetete
(PS:我现在试图在Xamarin论坛上发布这个问题两次,但他们似乎没有任何理由拒绝我的问题)