Search Unity

TextMesh Pro An assembly with the same name `TextMeshPro' has already been imported.

Discussion in 'UGUI & TextMesh Pro' started by Deleted User, Mar 13, 2017.

  1. Deleted User

    Deleted User

    Guest

    I updated my Unity 5.5.2 project with TextMesh Pro (Version: 1.0.55.0b7 now by Unity) to Unity 5.6.0 b11 and get the following error:

    error CS1704: An assembly with the same name `TextMeshPro' has already been imported. Consider removing one of the references or sign the assembly
    Assets/TextMesh Pro/Plugins/TextMeshPro.dll (Location of the symbol related to previous error)
    Assets/TextMesh Pro/Plugins/Runtime-Only DLL/TextMeshPro.dll (Location of the symbol related to previous error)

    Compilation failed: 1 error(s), 0 warnings
     
  2. fredsa

    fredsa

    Joined:
    May 31, 2015
    Posts:
    19
    Seeing the same warning with:
    - Unity: 5.6.0f1 (=only slightly newer than 5.6.0b11)
    - Text Mesh Pro: Version: 1.0.55.0b7 (Mar 06, 2017)
     
  3. Sunderer

    Sunderer

    Joined:
    Mar 16, 2015
    Posts:
    35
    Yes, I have the same problem. Was fine on 5.5 but importing TextMeshPro into 5.6 beta causes same error. I tested opening the project again in 5.5 and importing TextMeshPro again and it was working fine.

    Anyone figured out a fix? Deleting the DLL didnt work, heh.
     
  4. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    There is an issue with DLL handling in Unity 5.6 which goes back to beta 5 or so. This issue is expected to be resolved in the next release of Unity 5.6.

    Once this is addressed, I'll release an updated version of TMP for Unity 5.6.
     
  5. Skjalg

    Skjalg

    Joined:
    May 25, 2009
    Posts:
    211
    Im seeing this error on the latest stable release of unity. (5.5.2f1)
     
  6. Skjalg

    Skjalg

    Joined:
    May 25, 2009
    Posts:
    211
    Also getting the error on latest patch release (5.5.2p3)
     
  7. Skjalg

    Skjalg

    Joined:
    May 25, 2009
    Posts:
    211
    I am starting to think that theres something wrong with the latest asset on asset store and not the unity version? Do I need to purchase the asset now to get the source code to circumvent this error?
     
  8. kscho

    kscho

    Joined:
    Jun 17, 2014
    Posts:
    59
    I'm wonder whether the Text UI components in existing project would be automatically converted to TextMeshPro in the future?
     
  9. Skjalg

    Skjalg

    Joined:
    May 25, 2009
    Posts:
    211
    Okay I fixed the import message by changing the dll settings on the TextMeshPro.dll to
    upload_2017-3-21_10-10-24.png

    (it was set to Any Platform, which for some reason includes Editor, but theres already one for the editor which is why the error pops up)
     
    Railon23, CoughE, Maxim_AO and 6 others like this.
  10. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    This error is most certainly a result of the DLL process where different DLL's are needed for each version of Unity.

    So if a user starts with Unity 5.3 and grabs TextMesh Pro from the Asset Store, everything should be fine. But if they upgrade to Unity 5.4, they will also need to remember to update their version of TextMesh Pro from the Asset Store to get the version with the dlls created for Unity 5.4. And so on for other versions of Unity.

    This process is more complicated for me as I have to produce these different dll and packages and more complicated for the user as well.

    When TextMesh Pro gets included with the Unity installer as a package or as dll along with other Unity dlls, then migrating from version to version of Unity should be fine. Please keep in mind, this included version will not be the Integrated version which is essentially a full re-write to take full advantage of the closer integration to make TMP even better and more powerful.

    So circling back, it is a lot more convenient to work with the source code version as users don't have to worry about the dll stuff and easier for me in terms of delivery and support given I can provide code changes for simple fixes. Although I wish everyone had the source code version from a support point of view, out of respect for users who have purchased TextMesh Pro, I don't feel it is right to give the source code version to all for free. Now if the vast majority of users who paid for it, felt it was fine then we could make different plans.
     
  11. Sunderer

    Sunderer

    Joined:
    Mar 16, 2015
    Posts:
    35
    Skjalg I didnt fully get how you got around the issue? When importing you just unticked editor for the platform plugins on the DLL? My issue is arising specifically for an android build.

    Stephen_B, thanks for this response, but rather than release the source code could you just suggest a go around? My issue was not because of an upgrade, ive installed textmeshpro into a 5.6b project and not upgraded.
     
  12. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    As I have stated previously, there is an issue in Unity 5.6 related to dll handling and as such we have to wait until the next release of Unity 5.6 where this issue should be resolved. Once this has been addressed, I can then create a new release of TMP for Unity 5.6.
     
  13. Sunderer

    Sunderer

    Joined:
    Mar 16, 2015
    Posts:
    35
    Stephen_B, the workaround from SKjalg seems to work just fine?
     
    Dunsec likes this.
  14. Dunsec

    Dunsec

    Joined:
    Apr 3, 2015
    Posts:
    5
    This worked perfectly for me aswell!
     
  15. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    There are other gremlins in there still but a proper Unity 5.6 release will be available soon. If everything appears to be working fine, just keep working away and make sure you update to the next release when it becomes available.

    I'll post here to let everyone know when it is available.
     
  16. berzerk

    berzerk

    Joined:
    Dec 23, 2014
    Posts:
    18
    Just installed the 5.6f3 final and the error happened to me. I had TMP already as a plugin, but Unity supposedly now comes with TMP embedded? Could it be a conflict?
     
  17. statmom

    statmom

    Joined:
    Feb 14, 2016
    Posts:
    5
    I also just upgraded to 5.6f3, and getting same error. The project (in 5.5.1) had a recent TextMeshPro download from the asset store. Today, in 5.6, I then deleted the TextMesh Pro asset which I had downloaded, and I get massive list of compile errors. When I click on a something in the Hierarchy that was created with TextMesh Pro, I get lots of NullReferenceException for what looks like editor scripts for the inspector (I'm just learning that, so I recognize some: UnityEngine.GUILayoutUtility.DoGetRect....). The inspector is not looking like the TextMesh Pro - it's missing all the options. Will keep trying different things.
     
  18. statmom

    statmom

    Joined:
    Feb 14, 2016
    Posts:
    5
    Update:
    Just tried the fix to the dll (Skjalg screen print above) - I needed to uncheck both "Any Platform" AND "Editor" - works now!
     
    CoughE likes this.
  19. statmom

    statmom

    Joined:
    Feb 14, 2016
    Posts:
    5
    Try the fix shown in screen print - by Skjalg - works! Don't forget to uncheck both Any Platform and Editor
     
  20. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    The new version of TextMesh Pro which is 1.0.55.0b8 hasn't made it thru the Asset Store review process. It should become available today but look for this specific release and also make sure you update with the correct version of Unity. So if you are using 5.6, get the new release from within Unity 5.6.

    Update
    Release 1.0.55.0b8 is now available on the Asset Store. Please be sure to review the Release notes & Upgrade notes.
     
    Last edited: Mar 31, 2017
  21. Deleted User

    Deleted User

    Guest

    Still not working with Unity 5.6.0f3

    1. removed the previous installation of TextMesh Pro by deleting the "TextMesh Pro" folder

    2. upgraded Unity from Unity 5.5.2f1 to Unity 5.6.0f3

    3. imported new release v1.0.55.0b8 from within Unity 5.6.0f3 (Asset Store window)

    Info: If I select "Import" repeatedly it will import/refresh the shaders. There is no end.
     
    Last edited by a moderator: Apr 1, 2017
  22. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    Just imported the latest release in a new project created with Unity 5.6.0f3 and everything appears to be working fine.

    To try to isolate whatever issue you might be having, please create a new Unity project in Unity 5.6. Make sure you have Asset Serialization set to Force Text. Then import the new release from the Asset Store and let me know what happens.
     
  23. Deleted User

    Deleted User

    Guest

    Still not working with Unity 5.6.0f3 Personal (64-bit)

    1. created New Unity Project

    2. set Edit > Project Settings > Editor > Asset Serialization > [Mode] Force Text

    3. Asset Store [window] > [Search] TextMesh Pro > Import

    Console Output (bold: difference to first post #1)
    Info: If I select "Import" repeatedly it will import/refresh the shaders. There is no end.

    see attached image
     

    Attached Files:

    Last edited by a moderator: Apr 1, 2017
  24. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    Based on this information, I have a feeling the Asset Store is still giving you the release for Unity 5.5 instead of the release for Unity 5.6. This can happen when a package was downloaded with a previous version of Unity which was the upgraded where the Asset Store cache gets confused.

    Send me a PM with your email address and I'll get you the correct package while I also look up how to clear the Asset Store cache so that it provides the correct version of a package.
     
  25. Deleted User

    Deleted User

    Guest

    It works!

    It would be great to know how to clear the Asset Store cache so that it provides the correct version of a package.
     
  26. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    Looks like the issue was indeed the Asset Store still thinking you were using Unity 5.5 and giving you the Unity 5.5 release of TextMesh Pro instead of the Unity 5.6.

    In terms of how to reset the Asset Store cache or whatever is causing it to still think you are using Unity 5.5, I am waiting on an answer from the Asset Store team.
     
  27. berzerk

    berzerk

    Joined:
    Dec 23, 2014
    Posts:
    18
    I imported the new TMP package from the Asset Store (selected just the DLLs) and it seems to be working now.
     
  28. statmom

    statmom

    Joined:
    Feb 14, 2016
    Posts:
    5
    I checked asset store in my project - and TMP had an update available. It is the new v1.0.55.0b8 version of TMP. I actually just deleted the old TMP, and imported the new. It is working fine, and I DO NOT have to go in and change the DLL run-time settings. I just checked them and "Any Platform" and "Editor" are selected. Yay!
     
  29. Corpulent

    Corpulent

    Joined:
    Dec 6, 2016
    Posts:
    2
    I had the same problem. The solution was for me to search and delete the "TextMesh Pro.unitypackage" located here:
    \Users\UserName\AppData\Roaming\Unity\Asset Store-5.x
    Delete TMP from your project and import again.
     
  30. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    I did get more information from the Asset Store Team and the issue is based on which version of Unity you are logged into. For instance, let's say you logged on to Unity when you were using Unity 5.5. You then upgraded to Unity 5.6 but never logged out. Then even thought you are using Unity 5.6, the Asset Store will still think you are using Unity 5.5.

    Solution according to the Asset Store Team, simply log out of Unity and then log back in with the version you expect to get the package for which in this case is Unity 5.6.
     
    nathanjams and Corpulent like this.
  31. Corpulent

    Corpulent

    Joined:
    Dec 6, 2016
    Posts:
    2
    Makes sense, thanks for your work investigating this.
    Hope this will help those who are still searching the solution.
     
  32. nathanjams

    nathanjams

    Joined:
    Jul 27, 2016
    Posts:
    304
    This solved my issue.

    Thanks for figuring out this weird little issue I didn't even know I had.

    Nathan
     
    Stephan_B likes this.
  33. Hattoriseed

    Hattoriseed

    Joined:
    Feb 24, 2015
    Posts:
    25
    Hi Stephan, I am getting the same error even after following your steps, is there a way for me to see what asset version I am getting from the asset store, or could you send me the latest version please?
     
  34. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    Unfortunately, there is no way to know which version it is providing. Next release, I'll make sure there is a way given this annoying issue.

    Try the steps again where you load the version of Unity you want to work with. Log out - close Unity - load Unity again, log in - get the asset from the store and see if you get the same results. If you do, just send me an email with the version of Unity you are using and I'll get you the release of TMP for the version.
     
  35. Hattoriseed

    Hattoriseed

    Joined:
    Feb 24, 2015
    Posts:
    25
    @Stephan_B

    Yes, I tried again and I still get the same error. I am sorry I don't use the forum often, how exactly do I send you an email, I don't think I get access to that information, is it the "Start a Conversation" option?
     
  36. inferno222

    inferno222

    Joined:
    Apr 29, 2014
    Posts:
    6
    Hi all,

    I found another fix for the problem since importing directly from the asset was not working.

    Just go to the asset store tab -> Toglge Download Manager(Icon) -> Search the asset -> Click download -> Click import

    Good luck!
     
  37. parthdarji

    parthdarji

    Joined:
    Jun 30, 2012
    Posts:
    14
    I got it to work by applying the 5.6.0-2 patch, deleting the TextMesh Pro folder and reimporting the plugin from the asset store. The version on my current plugin is: 1.0.55.0b8(Mar 31, 2017)
     
  38. ubberkid

    ubberkid

    Joined:
    Mar 11, 2014
    Posts:
    19
    For sure steps to fix this:
    1. Delete text mesh pro
    2. log out of unity
    3. close unity
    4. open unity
    5. log back in
    6. goto asset store tab (dont click import, that'll just import the last one you downloaded)
    7. click the download manager icon (right next to the shopping cart button at the top)
    8. find text mesh pro
    9. click download, let it finish
    10. now you can click import
    11. ???
    12. profit?
     
    vOwl likes this.
  39. Skjalg

    Skjalg

    Joined:
    May 25, 2009
    Posts:
    211
    Are you going to support Unity 2017 any time soon? Its already at b5 and I expect a full release is imminent.

    When downloading TextMesh Pro from the asset store
    upload_2017-5-11_11-4-47.png

    And importing it I get this:
    upload_2017-5-11_10-59-29.png

    Because the Editor dll uses obsolete Unity API
    upload_2017-5-11_11-6-50.png
    Theres also an immediate NullRefException after importing.
    NullReferenceException: Object reference not set to an instance of an object
    TMPro.TMP_Settings.get_defaultFontAsset ()
    TMPro.TextMeshProUGUI.LoadFontAsset ()
    TMPro.TextMeshProUGUI.OnValidate ()



    Selecting a font in the Font Asset Creator also gives me this error (which makes the asset unusable) (this bug is fixed in b5)

    NullReferenceException: Object reference not set to an instance of an object
    UnityEditor.EditorGUI.DoObjectField (Rect position, Rect dropRect, Int32 id, UnityEngine.Object obj, System.Type objType, UnityEditor.SerializedProperty property, UnityEditor.ObjectFieldValidator validator, Boolean allowSceneObjects, UnityEngine.GUIStyle style) (at C:/buildslave/unity/build/Editor/Mono/GUI/ObjectField.cs:206)
    UnityEditor.EditorGUI.DoObjectField (Rect position, Rect dropRect, Int32 id, UnityEngine.Object obj, System.Type objType, UnityEditor.SerializedProperty property, UnityEditor.ObjectFieldValidator validator, Boolean allowSceneObjects) (at C:/buildslave/unity/build/Editor/Mono/GUI/ObjectField.cs:21)
    UnityEditor.EditorGUI.ObjectField (Rect position, UnityEngine.GUIContent label, UnityEngine.Object obj, System.Type objType, Boolean allowSceneObjects) (at C:/buildslave/unity/build/Editor/Mono/EditorGUI.cs:3176)
    UnityEditor.EditorGUILayout.ObjectField (UnityEngine.GUIContent label, UnityEngine.Object obj, System.Type objType, Boolean allowSceneObjects, UnityEngine.GUILayoutOption[] options) (at C:/buildslave/unity/build/Editor/Mono/EditorGUI.cs:6876)
    UnityEditor.EditorGUILayout.ObjectField (System.String label, UnityEngine.Object obj, System.Type objType, Boolean allowSceneObjects, UnityEngine.GUILayoutOption[] options) (at C:/buildslave/unity/build/Editor/Mono/EditorGUI.cs:6854)
    TMPro.EditorUtilities.TMPro_FontAssetCreatorWindow.DrawControls ()
    TMPro.EditorUtilities.TMPro_FontAssetCreatorWindow.OnGUI ()
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
    System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:272)
    UnityEditor.HostView.Invoke (System.String methodName) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:265)
    UnityEditor.HostView.InvokeOnGUI (Rect onGUIPosition) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:232)
    UnityEditor.ContainerWindow:InternalCloseWindow()


    I have tried reimporting the asset. Downloading it anew from the asset store and importing it in a completely fresh project. In a completely fresh project I noticed that the default fonts bundled with the package works though.
     
    Last edited: May 11, 2017
  40. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    I do plan on releasing a version of TextMesh Pro for 2017.1. I am just waiting on a few issues to be addressed which are affecting TMP. These should be addressed in the next or subsequent beta release of 2017.1.
     
  41. nsmith1024

    nsmith1024

    Joined:
    Mar 18, 2014
    Posts:
    870
    This stuff is messing up my life, now i have to find time to handle all this when there were no problems before, i cant build, i need 5.5 for other reasons but now im stuck!! this whole thing is so frustrating i dont know why people stay in this software field for real!! every minute is some problem or other
     
    Rakesh6720 and Anflo like this.
  42. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    See my reply to your previous posts.

    In short, releases of TextMesh Pro for paid users have always been and will continue to be available on the TextMesh Pro user forum. If you have not already done so, please register on the TextMesh Pro user forum. You will need to provide your invoice # in order to be approved. Once approved you will find the latest releases in the "TMP - Alpha, Beta and Final Releases" section of the user forum.

    If you still have issue after upgrading, then simply post on the TMP user forum or just reach out to me via email as I am still here to help my users.
     
  43. Bitfabrikken

    Bitfabrikken

    Joined:
    Mar 24, 2013
    Posts:
    34
    Hi Stephan - do you have an ETA for when it's available? I can't get TMPro to work at all with Unity 2017.1.0b6
     
  44. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    I do have one available now but unable to upload it to the Asset Store since the Asset Store tool is broken for Unity 2017.1.

    Until then, just send me a PM with your email address and the version of Unity you want the release for. In your case, I know you want 2017.1 but I get lots of PM so just be sure to include all the info :)
     
  45. nsmith1024

    nsmith1024

    Joined:
    Mar 18, 2014
    Posts:
    870
    it works now (5.6)
     
  46. vOwl

    vOwl

    Joined:
    Jul 6, 2013
    Posts:
    8
    ...
    11. works like a charm.
    -> Thanks ubberkid.

     
  47. zhuk1011

    zhuk1011

    Joined:
    Jan 28, 2016
    Posts:
    3
    For me work:

    1. Delete "TextMesh Pro/Plugins" folder.
    2. goto asset store tab (dont click import, that'll just import the last one you downloaded)
    3. click the download manager icon (right next to the shopping cart button at the top)
    4. find text mesh pro
    5. click download, let it finish
    6. now you can click import
    7. close unity
    8. open unity
     
  48. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    I thought this asset store bug was fixed but apparently, it can still happen.

    If anyone runs into similar errors, it is now easy to tell if you have the correct version of TMP since the DLLs name reflect the version for which they are. For instance the DLL for Unity 5.6 would be "TextMeshPro-1.0.55.56.0b11" whereas the one for Unity 2017.1 would be "TextMeshPro-1.0.55.2017.1.0b11"

    In terms of how to get around the issue of the Asset Store, logging off your Unity ID - then closing Unity. Opening the correct version of Unity and then logging back in should do the trick.

    In terms of how to update, you need to first remove the previous package before importing the new one as @zhuk1011 stated.

    Like I said before, if all else fails, send me a PM with the version of Unity you are using along with your email address and I can forward you the correct version of TMP.

    P.S. For the release for 2017.1, a link to download it is available in the top sticky TextMesh Pro thread in this forum.
     
    zhuk1011 likes this.
  49. Maxim_AO

    Maxim_AO

    Joined:
    Jan 25, 2015
    Posts:
    15
    many many many many many thanks!!!!!!!
     
  50. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    @Maxim_AO Did you run into this issue with one of the latest releases of TMP?

    If so with which release and version of Unity?