在最新的Delphi中重新编译早期的FMX应用程序

问题描述 投票:0回答:1

我有一个 Delphi Android FMX 应用程序的旧(2016)源代码。我想在 Delphi 11.3 中重建它,但有问题。

(我的其他项目都可以正确构建和部署,所以Delphi配置良好,问题仅在这一个应用程序中)

Checking project dependencies...
Building nz.dproj (Debug, Android)
brcc32 command line for "nz.vrc"
  c:\program files (x86)\embarcadero\studio\22.0\bin\cgrc.exe -c65001 nz.vrc -fonz.res 
dccaarm command line for "nz.dpr"
  c:\program files (x86)\embarcadero\studio\22.0\bin\dccaarm.exe -$O- --no-config -B -Q -TX.so -AGenerics.Collections=System.Generics.Collections;
  Generics.Defaults=System.Generics.Defaults -DDEBUG;;FRAMEWORK_FMX -E.\Android\Debug -I"c:\program files 
  (x86)\embarcadero\studio\22.0\lib\Android\debug";"c:\program files (x86)\embarcadero\studio\22.0\lib\Android\Release";
  C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Program Files (x86)\Devart\UniDAC for RAD Studio 11\Lib\Android32" 
  -LEC:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Android -LNC:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android -NU.\Android\Debug 
  -NSSystem;Xml;Data;Datasnap;Web;Soap; -O"c:\program files (x86)\embarcadero\studio\22.0\lib\Android\Release";
  C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Program Files (x86)\Devart\UniDAC for RAD Studio 11\Lib\Android32" -R"c:\program 
  files (x86)\embarcadero\studio\22.0\lib\Android\Release";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Program Files 
  (x86)\Devart\UniDAC for RAD Studio 11\Lib\Android32" -U"c:\program files (x86)\embarcadero\studio\22.0\lib\Android\debug";"c:\program files 
  (x86)\embarcadero\studio\22.0\lib\Android\Release";C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Program Files 
  (x86)\Devart\UniDAC for RAD Studio 11\Lib\Android32" 
  --libpath:C:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\AndroidNDK-21-22.0.48361.3236\android-ndk-r21\sources\cxx-stl\llvm-libc++\libs\armeabi-v7a;
  C:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\AndroidNDK-21-22.0.48361.3236\android-ndk-r21\platforms\android-23\arch-arm\usr\lib 
  --linker:C:\Users\Public\Documents\Embarcadero\Studio\22.0\CatalogRepository\AndroidNDK-21-22.0.48361.3236\android-ndk-r21\toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin\arm-linux-androideabi-ld.exe 
  -V -VN -NO.\Android\Debug  nz.dpr   
[DCC Hint] special.pas(16): H2164 Variable 'ms2' is declared but never used in 'LoadBitmapFromBlob'
[DCC Hint] main.pas(128): H2164 Variable 'index' is declared but never used in 'TForm1.ListBoxPolItemClick'
paclient command line
  c:\program files (x86)\embarcadero\studio\22.0\bin\paclient.exe -u8 --dexmerge="C:\Program Files\Eclipse 
  Adoptium\jdk-11.0.15.10-hotspot\bin\java.exe,c:\program files 
  (x86)\embarcadero\studio\22.0\bin\Android\r8-3.3.28.jar,C:\PROJEKTY\NZ\6\Android\Debug\nz.classes,23,C:\PROJEKTY\NZ\6\Android\Debug\dex_list.txt"  
[PAClient Error] Error: E7688 Unable to execute '"C:\Program Files\Eclipse Adoptium\jdk-11.0.15.10-hotspot\bin\java.exe" -cp "c:\program files (x86)\embarcadero\studio\22.0\bin\Android\r8-3.3.28.jar" com.android.tools.r8.D8 --release --min-api 23 --output "C:\PROJEKTY\NZ\6\Android\Debug\nz.classes" @"C:\PROJEKTY\NZ\6\Android\Debug\dex_list.txt"' (Error 1)
[PAClient Error] Error: E7688 Error in c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\android-support-v4.dex.jar:
[PAClient Error] Error: E7688 java.nio.file.NoSuchFileException: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\android-support-v4.dex.jar
[PAClient Error] Error: E7688 Error in c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar:
[PAClient Error] Error: E7688 java.nio.file.NoSuchFileException: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar
[PAClient Error] Error: E7688 Compilation failed with an internal error.
[PAClient Error] Error: E7688 Exception in thread "main" java.lang.RuntimeException: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar
[PAClient Error] Error: E7688   at com.android.tools.r8.internal.Bj.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:98)
[PAClient Error] Error: E7688   at com.android.tools.r8.D8.main(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:4)
[PAClient Error] Error: E7688 Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar
[PAClient Error] Error: E7688   at Version.fakeStackEntry(Version_3.3.28.java:0)
[PAClient Error] Error: E7688   at com.android.tools.r8.internal.Bj.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:75)
[PAClient Error] Error: E7688   at com.android.tools.r8.internal.Bj.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:28)
[PAClient Error] Error: E7688   at com.android.tools.r8.internal.Bj.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:27)
[PAClient Error] Error: E7688   at com.android.tools.r8.BaseCommand$Builder.build(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:2)
[PAClient Error] Error: E7688   at com.android.tools.r8.D8.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:4)
[PAClient Error] Error: E7688   at com.android.tools.r8.internal.Bj.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:85)
[PAClient Error] Error: E7688   ... 1 more
[PAClient Error] Error: E7688 Caused by: java.nio.file.NoSuchFileException: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar
[PAClient Error] Error: E7688   at com.android.tools.r8.utils.j$a.d(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:21)
[PAClient Error] Error: E7688   at com.android.tools.r8.BaseCommand$Builder.e(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:3)
[PAClient Error] Error: E7688   at com.android.tools.r8.BaseCommand$Builder.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:12)
[PAClient Error] Error: E7688   at com.android.tools.r8.BaseCommand$Builder.addProgramFiles(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:3)
[PAClient Error] Error: E7688   at com.android.tools.r8.BaseCommand$Builder.addProgramFiles(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688   at com.android.tools.r8.n.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1058)
[PAClient Error] Error: E7688   at com.android.tools.r8.n.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688   at com.android.tools.r8.D8Command.parse(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688   ... 3 more
[PAClient Error] Error: E7688   Suppressed: java.lang.RuntimeException: com.android.tools.r8.internal.f: java.nio.file.NoSuchFileException: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar
[PAClient Error] Error: E7688       at com.android.tools.r8.internal.DT.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:25)
[PAClient Error] Error: E7688       at com.android.tools.r8.BaseCommand$Builder.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:3)
[PAClient Error] Error: E7688       at com.android.tools.r8.internal.Bj.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:24)
[PAClient Error] Error: E7688       at com.android.tools.r8.BaseCommand$Builder.build(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:2)
[PAClient Error] Error: E7688       ... 3 more
[PAClient Error] Error: E7688   Caused by: com.android.tools.r8.internal.f: java.nio.file.NoSuchFileException: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar
[PAClient Error] Error: E7688       at com.android.tools.r8.internal.DT.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:14)
[PAClient Error] Error: E7688       at com.android.tools.r8.internal.DT.error(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688       at com.android.tools.r8.utils.j$a.d(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:22)
[PAClient Error] Error: E7688       at com.android.tools.r8.BaseCommand$Builder.e(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:3)
[PAClient Error] Error: E7688       at com.android.tools.r8.BaseCommand$Builder.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:12)
[PAClient Error] Error: E7688       at com.android.tools.r8.BaseCommand$Builder.addProgramFiles(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:3)
[PAClient Error] Error: E7688       at com.android.tools.r8.BaseCommand$Builder.addProgramFiles(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688       at com.android.tools.r8.n.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1058)
[PAClient Error] Error: E7688       at com.android.tools.r8.n.a(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688       at com.android.tools.r8.D8Command.parse(R8_3.3.28_2aaf796388b4e9f6bed752d926eca110512a53a3f09a8d755196089c1cfdf799:1)
[PAClient Error] Error: E7688       ... 3 more
[PAClient Error] Error: E7688   Caused by: [CIRCULAR REFERENCE: java.nio.file.NoSuchFileException: c:\program files (x86)\embarcadero\studio\22.0\lib\android\Debug\google-play-services.dex.jar]
Failed
Elapsed time: 00:00:09.3*
android delphi firemonkey
1个回答
0
投票

升级 Android 应用程序时,12 Athens 的发行说明包括以下内容:

Android 30 API 支持
新版本包含一组不同的 Java 库,这使得旧项目不兼容。当您打开使用旧版本 RAD Studio 构建的 Android 项目时,您需要:

  • 导航至“项目”可停靠窗口。
  • 选择 Android 32 位或 Android 64 位作为活动目标平台。
  • 右键单击库节点。
  • 单击“将系统文件恢复为默认值”菜单项。

如果您没有看到“项目”窗口,请使用 [Ctrl][Alt]+[F11] 将其调出。

Revert Systems Files to Default

这应该可以帮助你开始。您还需要删除

AndroidManifest.template.xml
,但请注意,如果您对其进行了自定义,则需要迁移自定义设置。

© www.soinside.com 2019 - 2024. All rights reserved.