ha...you are right. The 2017 scripts directory indeed shows up in front of the 2018 one based on the order listed. Seems like my Maya 2018 is going a bit bananas... :) Now I know what's going on and a solution. Thank you, Marcus!
On Wednesday, February 21, 2018 at 9:12:19 AM UTC-8, Marcus Ottosson wrote: > > Ah, well you can spot the order in which directories are evaluated by > looking at the order of paths in sys.path. You should find that the 2017 > folder is before the 2018 folder. This shouldn’t be Maya’s doing, but > rather something happening elsewhere. 2018 shouldn’t know about 2017, nor > any other version before it. > > Ps. I use the word “should” rather than “is” because sometimes Maya simply > goes bananas. :) > > > On 21 February 2018 at 17:03, Jason Huang <[email protected] > <javascript:>> wrote: > >> Thank you for the tips Marcus. As checking the PYTHONPATH, I guess the >> problem was I have an older version of assetManager.py saved in the 2017 >> scripts folder and that directory is part of the PYTHONPATH directories >> Maya will look for modules. Maya 2018 might parse the 2017 scripts >> directory and execute the older version of assetManager.py first. >> >> cheers, >> Jason >> >> On Wednesday, February 21, 2018 at 8:08:44 AM UTC-8, Marcus Ottosson >> wrote: >>> >>> Yes, try something like this. >>> >>> import sys >>> sys.path.insert(0, r"C:\Users\jason\Documents\maya\2018\scripts")import >>> assetManager >>> >>> sys.path is a list of all directories Python will look for modules, >>> prior to importing it for the first time. It’s a somewhat forceful way of >>> achieving it however, it’s likely something is not right with your setup. >>> >>> Have a look at what your PYTHONPATH looks like. >>> >>> import os >>> print(os.getenv("PYTHONPATH")) >>> >>> PYTHONPATH (may) contain paths that is eventually parsed into sys.path. >>> >>> If it contains anything, then that is where Python will look for your >>> modules. Next is having a look at your maya.env file of your user >>> directory, that can safely be empty. If neither of those have any content, >>> then something more murky is happening. Maya should be able to find scripts >>> from its own scripts directory without any interference. If all else fails, >>> remove/move your Documents\maya directory elsewhere, such that Maya can >>> create a new one without any customisations. >>> >>> >>> On 21 February 2018 at 15:56, Jason Huang <[email protected]> wrote: >>> >>>> Thanks Marcus. Just tried that and apparently it's executing from the >>>> Maya 2017 scripts folder >>>> print(assetManager) >>>> <module 'assetManager' from >>>> 'C:\Users\jason\Documents\maya\2017\scripts\assetManager.pyc'> >>>> >>>> If I remove the assetManager.py from Maya 2017 scripts folder, >>>> everything is fine. >>>> Is there a way to tell Maya 2018 to execute from the 2018 script folder >>>> instead of the 2017? >>>> >>>> >>>> On Wednesday, February 21, 2018 at 7:18:40 AM UTC-8, Marcus Ottosson >>>> wrote: >>>>> >>>>> Try print(assetManager) to find out where the file actually resides >>>>> on disk, and make sure it’s the file you expect. >>>>> >>>>> >>>>> On 21 February 2018 at 15:10, Jason Huang <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi all, >>>>>> >>>>>> I got stuck at the beginning of creating a UI interface and couldn't >>>>>> figure out what was missing. >>>>>> >>>>>> ENV: Maya 2018 update 2, Windows 10. >>>>>> >>>>>> script name: assetManager.py (saved in Maya 2018 scripts folder) >>>>>> from Qt import QtWidgets, QtCore, QtGui >>>>>> import pymel.core as pm >>>>>> >>>>>> class ObjectManager(QtWidgets.QDialog): >>>>>> def __init__(self): >>>>>> >>>>>> super(ObjectManager, self).__init__() >>>>>> >>>>>> def showUI(): >>>>>> ui = ObjectManager() >>>>>> ui.show() >>>>>> return ui >>>>>> >>>>>> In Maya script editor: (python panel) >>>>>> import assetManager >>>>>> reload(assetManager) >>>>>> >>>>>> ui = assetManager.showUI() >>>>>> >>>>>> Maya errors out: >>>>>> # Error: AttributeError: file <maya console> line 1: 'module' object >>>>>> has no attribute 'showUI' # >>>>>> >>>>>> I am following a course and the same code demo-ed in the course video >>>>>> works fine in teacher's Maya session. >>>>>> >>>>>> Thanks, >>>>>> Jason >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Python Programming for Autodesk Maya" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> To view this discussion on the web visit >>>>>> https://groups.google.com/d/msgid/python_inside_maya/c31b5c6f-15d1-4203-ae10-6eb59dfa2362%40googlegroups.com >>>>>> >>>>>> <https://groups.google.com/d/msgid/python_inside_maya/c31b5c6f-15d1-4203-ae10-6eb59dfa2362%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>> >>>>> >>>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Python Programming for Autodesk Maya" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/python_inside_maya/b0645cb5-11a4-439a-8dac-891675411e17%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/python_inside_maya/b0645cb5-11a4-439a-8dac-891675411e17%40googlegroups.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "Python Programming for Autodesk Maya" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/python_inside_maya/09e6f9c7-67fe-406c-902f-8891b23cfe39%40googlegroups.com >> >> <https://groups.google.com/d/msgid/python_inside_maya/09e6f9c7-67fe-406c-902f-8891b23cfe39%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Python Programming for Autodesk Maya" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/6a352042-a99e-486f-ae77-40a67bec93b9%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
