Search Unity

TextMesh Pro: Invalid AssetDatabase path (...) Use path relative to the project folder.

Discussion in 'Asset Database' started by Peter77, Aug 21, 2020.

  1. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,618
    Building an Android version of our game, using TMP 1.5.1 and Unity 2018.4.23f1, causes
    TMPro.EditorUtilities.FontAssetPostProcessor
    to output various warnings during the build.

    Here are the relevant lines from the editor.log file:
    Code (CSharp):
    1. Refreshing native plugins compatible for Editor in 1.08 ms, found 3 plugins.
    2. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/iOS/libaudiopluginresonanceaudio.a. Use path relative to the project folder.
    3. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    4. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    5. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    6. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    7. System.Reflection.MethodBase:Invoke(Object, Object[])
    8. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    9.  
    10. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    11. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    12.  
    13. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/Android/gvr.aar. Use path relative to the project folder.
    14. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    15. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    16. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    17. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    18. System.Reflection.MethodBase:Invoke(Object, Object[])
    19. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    20.  
    21. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    22. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    23.  
    24. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/android_arm/libaudiopluginresonanceaudio.so. Use path relative to the project folder.
    25. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    26. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    27. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    28. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    29. System.Reflection.MethodBase:Invoke(Object, Object[])
    30. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    31.  
    32. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    33. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    34.  
    35. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/Android/unitygvr.aar. Use path relative to the project folder.
    36. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    37. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    38. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    39. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    40. System.Reflection.MethodBase:Invoke(Object, Object[])
    41. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    42.  
    43. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    44. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    45.  
    46. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/Linux64/libaudiopluginresonanceaudio.so. Use path relative to the project folder.
    47. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    48. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    49. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    50. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    51. System.Reflection.MethodBase:Invoke(Object, Object[])
    52. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    53.  
    54. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    55. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    56.  
    57. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/OSXIntel64/audiopluginresonanceaudio.bundle. Use path relative to the project folder.
    58. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    59. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    60. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    61. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    62. System.Reflection.MethodBase:Invoke(Object, Object[])
    63. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    64.  
    65. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    66. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    67.  
    68. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/android_arm64/libaudiopluginresonanceaudio.so. Use path relative to the project folder.
    69. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    70. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    71. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    72. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    73. System.Reflection.MethodBase:Invoke(Object, Object[])
    74. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    75.  
    76. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    77. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    78.  
    79. Invalid AssetDatabase path: D:/tools/Unity2018.4.23f1/Editor/Data/UnityExtensions/Unity/VR/Android/libprotobuf-java-nano.jar. Use path relative to the project folder.
    80. UnityEditor.AssetDatabase:GetMainAssetTypeAtPath(String)
    81. TMPro.EditorUtilities.FontAssetPostProcessor:OnPostprocessAllAssets(String[], String[], String[], String[]) (at Library\PackageCache\com.unity.textmeshpro@1.5.1\Scripts\Editor\TMPro_TexturePostProcessor.cs:31)
    82. System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
    83. System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
    84. System.Reflection.MethodBase:Invoke(Object, Object[])
    85. UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets(String[], String[], String[], String[], String[]) (at C:\buildslave\unity\build\Editor\Mono\AssetPostprocessor.cs:141)
    86.  
    87. [C:\buildslave\unity\build\artifacts/generated/bindings_old/common/Editor/AssetDatabaseBindings.gen.cpp line 29]
    88. (Filename: Library/PackageCache/com.unity.textmeshpro@1.5.1/Scripts/Editor/TMPro_TexturePostProcessor.cs Line: 31)
    89.  
    Any chance you can fix this issue? I'm aiming for zero warnings during a build.
     
  2. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    I just ran into this a few days ago. Not sure what causes some assets to get imported from outside the project.

    The following should resolve that issue

    upload_2020-8-21_3-56-10.png
     
    Last edited: Aug 21, 2020
  3. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,618
    Can you please change it to
    IgnoreCase
    ? We're using lower-case everywhere, including "assets", "projectsettings", etc.

    In my case it was GetMainAssetTypeAtPath that would generate the warning, see log above. So your change should be moved outside the if statement.
     
    Last edited: Aug 21, 2020
  4. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    See revised post above ... ;)
     
  5. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,618
    Last edited: Aug 21, 2020
  6. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    I made the change the suggested change. The return indeed should have been continue.

    upload_2020-8-21_11-49-31.png
     
    Peter77 likes this.
  7. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,618
    Yep, this looks good to me :) Thanks for the quick fix!