2017-04-14 3 views
0

Xamarin Docsには、JavaOptionsパッケージプロパティがあります。 「.dexファイルをビルドするときにjavaに渡すための追加のコマンドラインオプションを指定する」という記述があります。しかし、例はありません。どのような形でこれらのパラメータを渡すことができますか? JavaOptionsは、アンドロイドのプロジェクトオプションの下にある「Additional Java Options」で設定することもできます。しかし、再び、例はありません。 '--no-optimize'、 'no-optimize'のようなオプションは受け付けません。だから、どのようなフォーマットが受け入れられますか?高度なアンドロイドビルド設定で指定できる追加のJavaオプションは何ですか?

答えて

1

XamarinがXamarin.Android MSBuildの処理中にJavaプロセスを開始するために持っている、すなわち

  • ProGuardの
  • JarToXml
  • CompileToDalvik
  • ...

それはそれらを通過します追加のcmd-line引数をjavaに設定すると、最もよく使用されるオプションは、結合プロジェクト中またはProguard実行に使用されるJavaプロセス、など。

-Xmx<size>  set maximum Java heap size 

注:Javaヒープサイズが十分Xamarinが別々のサイズオプションを提供することが一般的です増加、あなたが入力した値が-Xmx接頭辞と渡されJavaのcmd行オプションとして使用できます。

日時:https://github.com/xamarin/xamarin-android/search?q=JavaOptions&type=

シェル型java -helpまたはjava -Xから、... Javaプロセスで使用可能なさまざまなオプションを参照するには。

+0

だから私は間違っていて、JavaOptionsはdx最適化を無効にできないようです。これを行う方法はありますか? – ichernob

+0

@ichernob MsBuildタスク「Xamarin.Android.Tasks.Dx」を変更して追加のオプションを渡す必要があります。理由を聞いてもいいですか。あなたはdex最適化をスキップしようとしていますか? – SushiHangover

+0

私は、デバッグコードがリリースコードより約2〜3倍速く動作するときに問題に直面しました。検出されたコードセクションにはDEBUGシンボルは含まれていません。また、私はリリースビルドのためのジット最適化されたコードを見てみましたが、私の試みは失敗しました。逆アセンブリウィンドウでは、アセンブリをロードできないことのみが示されます。だから、いくつかのコード最適化があると私の唯一の提案はパフォーマンス回帰をもたらします。 – ichernob

関連する問題