Xamarin for VisualStudio 编译android程序报错

ijianbo
博客专家认证
2015-09-08 05:01:43
折腾了几天都没搞定,请高手帮忙看看这个主要是什么原因导致的,谢谢!

报错信息如下:

1>Task "CompileToDalvik"
1> CompileToDalvik
1> JavaOptions:
1> JavaMaximumHeapSize: 1G
1> ClassesOutputDirectory: obj\Debug\android\bin\classes
1> JavaToolPath: D:\Java\jdk1.6.0_39\\bin
1> DxJarPath: F:\test\dev\resource\java\AndroidSDK\build-tools\android-4.2.2\\lib\dx.jar
1> ToolExe: java.exe
1> ToolPath:
1> UseDx: False
1> MultiDexEnabled: False
1> JavaLibrariesToCompile:
1> C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v4.2\mono.android.jar
1> D:\Java\jdk1.6.0_39\\bin\java.exe -Xmx1G -jar F:\test\dev\resource\java\AndroidSDK\build-tools\android-4.2.2\\lib\dx.jar --no-strict --dex --output=obj\Debug\android\bin obj\Debug\android\bin\classes "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v4.2\mono.android.jar"
1> unknown output extension: obj\Debug\android\bin
1> usage:
1> dx --dex [--debug] [--verbose] [--positions=<style>] [--no-locals]
1> [--no-optimize] [--statistics] [--[no-]optimize-list=<file>] [--no-strict]
1> [--keep-classes] [--output=<file>] [--dump-to=<file>] [--dump-width=<n>]
1> [--dump-method=<name>
  • ]
  • [--verbose-dump] [--no-files] [--core-library]
    1> [--num-threads=<n>] [--incremental] [--force-jumbo]
    1> [<file>.class | <file>.{zip,jar,apk} | <directory>] ...
    1> Convert a set of classfiles into a dex file, optionally embedded in a
    1> jar/zip. Output name must end with one of: .dex .jar .zip .apk. Positions
    1> options: none, important, lines.
    1> dx --annotool --annotation=<class> [--element=<element types>]
    1> [--print=<print types>]
    1> dx --dump [--debug] [--strict] [--bytes] [--optimize]
    1> [--basic-blocks | --rop-blocks | --ssa-blocks | --dot] [--ssa-step=<step>]
    1> [--width=<n>] [<file>.class | <file>.txt] ...
    1> Dump classfiles, or transformations thereof, in a human-oriented format.
    1> dx --find-usages <file.dex> <declaring type> <member>
    1> Find references and declarations to a field or method.
    1> declaring type: a class name in internal form, like Ljava/lang/Object;
    1> member: a field or method name, like hashCode
    1> dx -J<option> ... <arguments, in one of the above forms>
    1> Pass VM-specific options to the virtual machine that runs dx.
    1> dx --version
    1> Print the version of this tool (1.7).
    1> dx --help
    1> Print this message.
    1>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1662,3): error MSB6006: "java.exe" exited with code 1.
    1> DexOutputs:
    1>Done executing task "CompileToDalvik" -- FAILED.
    1>Done building target "_CompileToDalvik" in project "App1.csproj" -- FAILED.
    1>
    1>Build FAILED.
    1>
    1>Time Elapsed 00:00:06.45
    ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========


Xamarin.Android.Common.targets(1661,3) 的内容是:

<!-- Compile java code to dalvik -->
<CompileToDalvik
DxJarPath="$(DxJarPath)"
JavaToolPath="$(JavaToolPath)"
JavaMaximumHeapSize="$(JavaMaximumHeapSize)"
JavaOptions="$(JavaOptions)"
ClassesOutputDirectory="$(IntermediateOutputPath)android\bin\classes"
ToolPath="$(DxToolPath)"
ToolExe="$(DxToolExe)"
UseDx="$(UseDx)"
MultiDexEnabled="$(AndroidEnableMultiDex)"
JavaLibrariesToCompile="@(_JavaLibrariesToCompile)"
OptionalObfuscatedJarFile="$(IntermediateOutputPath)proguard\__proguard_output__.jar"
/>


...全文
266 11 打赏 收藏 举报
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ijianbo 2015-09-17
看来只有我遇到这个问题一样。
  • 打赏
  • 举报
回复
Poopaye 2015-09-09
引用 3 楼 xjbx 的回复:
[quote=引用 1 楼 shingoscar 的回复:] [quote=引用 楼主 xjbx 的回复:] unknown output extension: obj\Debug\android\bin
报错信息都如此明确了[/quote] 我看到了报错的原因,但不知道要如何解决[/quote] --output参数必须以.dex .jar .zip .apk这些扩展名结尾,一般应该是classes.dex,你看看配置里关于输出的地方
  • 打赏
  • 举报
回复
ijianbo 2015-09-09
引用 5 楼 starfd 的回复:
上面链接里面发问者也没解决这个问题,然后他是重装了后,问题得到解决 回复人里面是说level级别什么的问题,然后看大意是说他在设备上运行就不报这个错误,这应该是Xamarin的bug
我都没法编译,还谈不上在设备上运行,我重装了也没解决。
  • 打赏
  • 举报
回复
ijianbo 2015-09-09
  • 打赏
  • 举报
回复
上面链接里面发问者也没解决这个问题,然后他是重装了后,问题得到解决 回复人里面是说level级别什么的问题,然后看大意是说他在设备上运行就不报这个错误,这应该是Xamarin的bug
  • 打赏
  • 举报
回复
ijianbo 2015-09-09
引用 1 楼 shingoscar 的回复:
[quote=引用 楼主 xjbx 的回复:] unknown output extension: obj\Debug\android\bin
报错信息都如此明确了[/quote] 我看到了报错的原因,但不知道要如何解决
  • 打赏
  • 举报
回复
ijianbo 2015-09-09
引用 9 楼 diaodiaop 的回复:
弄了几天 连编译都不行.. 还不放弃?? 所以 弄这些虚无的东西 没用的...
  • 打赏
  • 举报
回复
by_封爱 版主 2015-09-09
弄了几天 连编译都不行.. 还不放弃?? 所以 弄这些虚无的东西 没用的...
  • 打赏
  • 举报
回复
ijianbo 2015-09-09
引用 7 楼 shingoscar 的回复:
[quote=引用 3 楼 xjbx 的回复:] [quote=引用 1 楼 shingoscar 的回复:] [quote=引用 楼主 xjbx 的回复:] unknown output extension: obj\Debug\android\bin
报错信息都如此明确了[/quote] 我看到了报错的原因,但不知道要如何解决[/quote] --output参数必须以.dex .jar .zip .apk这些扩展名结尾,一般应该是classes.dex,你看看配置里关于输出的地方[/quote] 在那里配置这些参数呢?
  • 打赏
  • 举报
回复
Poopaye 2015-09-08
引用 楼主 xjbx 的回复:
unknown output extension: obj\Debug\android\bin
报错信息都如此明确了
  • 打赏
  • 举报
回复
发帖
C#

10.8w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
帖子事件
创建了帖子
2015-09-08 05:01
社区公告

让您成为最强悍的C#开发者