title: Cannot build an App in Sencha Touch - Issue with a dependency with a plugin
body: <p>I am using Sencha Cmd v3.0.2.288.<br>
  I need to build an application, (sencha app build).<br>
  I receive this error.</p>
  
  <p>For my understanding seems connected with a dependence with a plugin <code>Plugin.field.TimePicker</code>.</p>
  
  <p>In app.js I load this plugin using</p>
  
  <pre><code>Ext.Loader.setPath('Plugin', './plugin');
  </code></pre>
  
  <p>It is working great on the Desktop Browser.</p>
  
  <p>Could you point me out what I am doing wrong here?</p>
  
  <pre><code>js:9667
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\view\Login.j
  s:1467
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;             ]) -- C:\wamp\www\gs-2\app\view\Logi
  n.js:7871
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;             ],) -- C:\wamp\www\gs-2\app\view\Nav
  igViewTimetable.js:2471
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\view\ScanQRC
  ontainer.js:13367
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;             ]) -- C:\wamp\www\gs-2\app\view\Sett
  ings.js:3671
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ]) -- C:\wamp\www\gs-2\app\view\Settings
  Failure.js:3867
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\view\TtDetai
  lView.js:10367
  [INF]           Processing class inheritance graph
  [INF]           Processing instantiation refereces to classes and aliases
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ]) -- C:\wamp\www\gs-2\app\model\Edit.js
  :1667
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\model\Today.
  js:9667
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\view\Login.j
  s:1467
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;             ]) -- C:\wamp\www\gs-2\app\view\Logi
  n.js:7871
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;             ],) -- C:\wamp\www\gs-2\app\view\Nav
  igViewTimetable.js:2471
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\view\ScanQRC
  ontainer.js:13367
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;             ]) -- C:\wamp\www\gs-2\app\view\Sett
  ings.js:3671
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ]) -- C:\wamp\www\gs-2\app\view\Settings
  Failure.js:3867
  [WRN]           C1000: Yui Compressor Warning (Trailing comma is not legal in an
   ECMA-262 object initializer =&gt;         ],) -- C:\wamp\www\gs-2\app\view\TtDetai
  lView.js:10367
  [INF]           Processing source dependencies
  [ERR]           Failed to find file for Plugin.field.TimePicker
   required by C:\wamp\www\gs-2\app\view\DashboardEdit.js
  [ERR]
  [ERR]           BUILD FAILED
  [ERR]           com.sencha.exceptions.BasicException: The following error occurr
  ed while executing this line:
  [ERR]           C:\wamp\www\gs-2\.sencha\app\build-impl.xml:137: com.sencha.exce
  ptions.ExScript: Wrapped com.sencha.exceptions.BasicException: com.sencha.except
  ions.ExBuild: Failed to find any files for Plugin.field.TimePicker (x-app-build#
  273)   runAppBuild (x-app-build:273)   [anonymous] (x-app-build:545)   x_app_bui
  ld (x-app-build:543)   &lt;script&gt; (anonymous:1)
  [ERR]                   at com.sencha.exceptions.BasicException.wrap(BasicExcept
  ion.java:43)
  [ERR]                   at com.sencha.cli.Command.dispatch(Command.java:104)
  [ERR]                   at com.sencha.cli.Commands.dispatch(Commands.java:49)
  [ERR]                   at com.sencha.cli.AbstractCommand.dispatch(AbstractComma
  nd.java:182)
  [ERR]                   at com.sencha.ant.SenchaCommandTask.doExecute(SenchaComm
  andTask.java:69)
  [ERR]                   at com.sencha.ant.BaseAntTask.execute(BaseAntTask.java:2
  2)
  [ERR]                   at org.apache.tools.ant.UnknownElement.execute(UnknownEl
  ement.java:291)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M
  ethod)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown S
  ource)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Source)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at org.apache.tools.ant.dispatch.DispatchUtils.execute(D
  ispatchUtils.java:106)
  [ERR]                   at org.apache.tools.ant.Task.perform(Task.java:348)
  [ERR]                   at org.apache.tools.ant.Target.execute(Target.java:392)
  [ERR]                   at org.apache.tools.ant.Target.performTasks(Target.java:
  413)
  [ERR]                   at org.apache.tools.ant.Project.executeSortedTargets(Pro
  ject.java:1399)
  [ERR]                   at org.apache.tools.ant.Project.executeTarget(Project.ja
  va:1368)
  [ERR]                   at org.apache.tools.ant.helper.DefaultExecutor.executeTa
  rgets(DefaultExecutor.java:41)
  [ERR]                   at org.apache.tools.ant.Project.executeTargets(Project.j
  ava:1251)
  [ERR]                   at com.sencha.ant.AntRunner.run(AntRunner.java:156)
  [ERR]                   at com.sencha.ant.AntRunner.run(AntRunner.java:72)
  [ERR]                   at com.sencha.command.BasePluginCommands$BasePluginComma
  nd.run(BasePluginCommands.java:94)
  [ERR]                   at com.sencha.command.BasePluginCommands$BasePluginComma
  nd.run(BasePluginCommands.java:98)
  [ERR]                   at com.sencha.command.BasePluginCommands$BaseNamePathCom
  mand.run(BasePluginCommands.java:142)
  [ERR]                   at com.sencha.command.app.AppCommands$BuildCommand.execu
  te(AppCommands.java:116)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M
  ethod)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown S
  ource)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Source)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at com.sencha.cli.Command.dispatch(Command.java:78)
  [ERR]                   at com.sencha.cli.Commands.dispatch(Commands.java:49)
  [ERR]                   at com.sencha.cli.Commands.dispatch(Commands.java:49)
  [ERR]                   at com.sencha.command.Sencha.main(Sencha.java:71)
  [ERR]           Caused by: C:\wamp\www\gs-2\.sencha\app\build-impl.xml:144: The
  following error occurred while executing this line:
  [ERR]           C:\wamp\www\gs-2\.sencha\app\build-impl.xml:137: com.sencha.exce
  ptions.ExScript: Wrapped com.sencha.exceptions.BasicException: com.sencha.except
  ions.ExBuild: Failed to find any files for Plugin.field.TimePicker (x-app-build#
  273)   runAppBuild (x-app-build:273)   [anonymous] (x-app-build:545)   x_app_bui
  ld (x-app-build:543)   &lt;script&gt; (anonymous:1)
  [ERR]                   at org.apache.tools.ant.ProjectHelper.addLocationToBuild
  Exception(ProjectHelper.java:551)
  [ERR]                   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:44
  4)
  [ERR]                   at org.apache.tools.ant.taskdefs.CallTarget.execute(Call
  Target.java:105)
  [ERR]                   at org.apache.tools.ant.UnknownElement.execute(UnknownEl
  ement.java:291)
  [ERR]                   at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown
  Source)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Source)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at org.apache.tools.ant.dispatch.DispatchUtils.execute(D
  ispatchUtils.java:106)
  [ERR]                   at org.apache.tools.ant.Task.perform(Task.java:348)
  [ERR]                   at org.apache.tools.ant.Target.execute(Target.java:392)
  [ERR]                   at org.apache.tools.ant.Target.performTasks(Target.java:
  413)
  [ERR]                   at org.apache.tools.ant.Project.executeSortedTargets(Pro
  ject.java:1399)
  [ERR]                   at org.apache.tools.ant.Project.executeTarget(Project.ja
  va:1368)
  [ERR]                   at org.apache.tools.ant.helper.DefaultExecutor.executeTa
  rgets(DefaultExecutor.java:41)
  [ERR]                   at org.apache.tools.ant.Project.executeTargets(Project.j
  ava:1251)
  [ERR]                   at com.sencha.ant.AntRunner.run(AntRunner.java:156)
  [ERR]                   at com.sencha.ant.AntRunner.run(AntRunner.java:80)
  [ERR]                   at com.sencha.command.ant.AntCommand.execute(AntCommand.
  java:75)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M
  ethod)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown S
  ource)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Source)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at com.sencha.cli.Command.dispatch(Command.java:78)
  [ERR]                   ... 31 more
  [ERR]           Caused by: C:\wamp\www\gs-2\.sencha\app\build-impl.xml:137: com.
  sencha.exceptions.ExScript: Wrapped com.sencha.exceptions.BasicException: com.se
  ncha.exceptions.ExBuild: Failed to find any files for Plugin.field.TimePicker (x
  -app-build#273)   runAppBuild (x-app-build:273)   [anonymous] (x-app-build:545)
    x_app_build (x-app-build:543)   &lt;script&gt; (anonymous:1)
  [ERR]                   at org.apache.tools.ant.dispatch.DispatchUtils.execute(D
  ispatchUtils.java:116)
  [ERR]                   at org.apache.tools.ant.Task.perform(Task.java:348)
  [ERR]                   at org.apache.tools.ant.Target.execute(Target.java:392)
  [ERR]                   at org.apache.tools.ant.Target.performTasks(Target.java:
  413)
  [ERR]                   at org.apache.tools.ant.Project.executeSortedTargets(Pro
  ject.java:1399)
  [ERR]                   at org.apache.tools.ant.helper.SingleCheckExecutor.execu
  teTargets(SingleCheckExecutor.java:38)
  [ERR]                   at org.apache.tools.ant.Project.executeTargets(Project.j
  ava:1251)
  [ERR]                   at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:44
  2)
  [ERR]                   ... 52 more
  [ERR]           Caused by: com.sencha.exceptions.ExScript: Wrapped com.sencha.ex
  ceptions.BasicException: com.sencha.exceptions.ExBuild: Failed to find any files
   for Plugin.field.TimePicker (x-app-build#273)   runAppBuild (x-app-build:273)
   [anonymous] (x-app-build:545)   x_app_build (x-app-build:543)   &lt;script&gt; (anony
  mous:1)
  [ERR]                   at com.sencha.util.JavaScriptHost.eval(JavaScriptHost.ja
  va:74)
  [ERR]                   at com.sencha.ant.ScriptTask.executeScript(ScriptTask.ja
  va:92)
  [ERR]                   at org.apache.tools.ant.taskdefs.optional.script.ScriptD
  efBase.execute(ScriptDefBase.java:50)
  [ERR]                   at org.apache.tools.ant.UnknownElement.execute(UnknownEl
  ement.java:291)
  [ERR]                   at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown
  Source)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Source)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at org.apache.tools.ant.dispatch.DispatchUtils.execute(D
  ispatchUtils.java:106)
  [ERR]                   ... 59 more
  [ERR]           Caused by: org.mozilla.javascript.WrappedException: Wrapped com.
  sencha.exceptions.BasicException: com.sencha.exceptions.ExBuild: Failed to find
  any files for Plugin.field.TimePicker (x-app-build#273)
  [ERR]                   at org.mozilla.javascript.Context.throwAsScriptRuntimeEx
  (Context.java:1786)
  [ERR]                   at org.mozilla.javascript.MemberBox.invoke(MemberBox.jav
  a:183)
  [ERR]                   at org.mozilla.javascript.NativeJavaMethod.call(NativeJa
  vaMethod.java:247)
  [ERR]                   at org.mozilla.javascript.Interpreter.interpretLoop(Inte
  rpreter.java:1701)
  [ERR]                   at org.mozilla.javascript.Interpreter.interpret(Interpre
  ter.java:854)
  [ERR]                   at org.mozilla.javascript.InterpretedFunction.call(Inter
  pretedFunction.java:164)
  [ERR]                   at org.mozilla.javascript.ContextFactory.doTopCall(Conte
  xtFactory.java:426)
  [ERR]                   at org.mozilla.javascript.ScriptRuntime.doTopCall(Script
  Runtime.java:3178)
  [ERR]                   at org.mozilla.javascript.InterpretedFunction.exec(Inter
  pretedFunction.java:175)
  [ERR]                   at org.mozilla.javascript.Context.evaluateString(Context
  .java:1111)
  [ERR]                   at com.sencha.util.JavaScriptHost.eval(JavaScriptHost.ja
  va:67)
  [ERR]                   ... 66 more
  [ERR]           Caused by: com.sencha.exceptions.BasicException: com.sencha.exce
  ptions.ExBuild: Failed to find any files for Plugin.field.TimePicker
  [ERR]                   at com.sencha.cli.Commands$Cmd.create(Commands.java:117)
  
  [ERR]                   at com.sencha.cli.Commands.findCommand(Commands.java:74)
  
  [ERR]                   at com.sencha.cli.Commands.dispatch(Commands.java:43)
  [ERR]                   at com.sencha.cli.Commands.dispatch(Commands.java:49)
  [ERR]                   at com.sencha.cli.AbstractCommand.dispatch(AbstractComma
  nd.java:182)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M
  ethod)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown S
  ource)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Sour
  [ERR]           ce)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at org.mozilla.javascript.MemberBox.invoke(MemberBox.jav
  a:161)
  [ERR]                   ... 75 more
  [ERR]           Caused by: com.sencha.exceptions.ExBuild: Failed to find any fil
  es for Plugin.field.TimePicker
  [ERR]                   at com.sencha.tools.compiler.CompilerContext.processFile
  Dependencies(CompilerContext.java:451)
  [ERR]                   at com.sencha.tools.compiler.CompilerContext.processFile
  Dependencies(CompilerContext.java:413)
  [ERR]                   at com.sencha.tools.compiler.CompilerContext.processFile
  Dependencies(CompilerContext.java:394)
  [ERR]                   at com.sencha.tools.compiler.CompilerContext.doProcessDe
  pendencies(CompilerContext.java:345)
  [ERR]                   at com.sencha.tools.compiler.CompilerContext.processDepe
  ndencies(CompilerContext.java:335)
  [ERR]                   at com.sencha.tools.compiler.CompilerContext.processDepe
  ndencies(CompilerContext.java:307)
  [ERR]                   at com.sencha.command.compile.CompileCommands.getCache(C
  ompileCommands.java:199)
  [ERR]                   at com.sencha.command.compile.CompileCommands.getCache(C
  ompileCommands.java:154)
  [ERR]                   at com.sencha.command.compile.CompileCommands$BaseFilter
  Command.&lt;init&gt;(CompileCommands.java:300)
  [ERR]                   at com.sencha.command.compile.CompileCommands$IncludeCom
  mand.&lt;init&gt;(CompileCommands.java:420)
  [ERR]                   at com.sencha.command.compile.CompileCommands$UnionComma
  nd.&lt;init&gt;(CompileCommands.java:425)
  [ERR]                   at com.sencha.command.compile.CompileCommands.createUnio
  n(CompileCommands.java:1068)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M
  ethod)
  [ERR]                   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown S
  ource)
  [ERR]                   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unkno
  wn Source)
  [ERR]                   at java.lang.reflect.Method.invoke(Unknown Source)
  [ERR]                   at com.sencha.cli.Commands$Cmd.create(Commands.java:99)
  [ERR]                   ... 84 more
  [ERR]
  [ERR]           Total time: 22 seconds
  [ERR]           com.sencha.exceptions.BasicException: The following error occurr
  ed while executing this line:
  C:\wamp\www\gs-2\.sencha\app\build-impl.xml:137: com.sencha.exceptions.ExScript:
   Wrapped com.sencha.exceptions.BasicException: com.sencha.exceptions.ExBuild: Fa
  iled to find any files for Plugin.field.TimePicker (x-app-build#273)
     runAppBuild (x-app-build:273)
     [anonymous] (x-app-build:545)
     x_app_build (x-app-build:543)
     &lt;script&gt; (anonymous:1)
  
  c:\wamp\www\gs-2&gt;
  </code></pre>
  
  <hr>
  
  <p>TimePicker.js</p>
  
  <pre><code>Ext.define('Plugin.field.TimePicker', {
      extend: 'Ext.field.Text',
      alternateClassName: 'Plugin.form.TimePicker',
      xtype: 'timepickerfield',
      requires: [
          'Plugin.picker.Time',
          'Ext.DateExtras'
      ],
  
      config: {
          ui: 'select',
  
          /**
           * @cfg {Object/Ext.picker.Date} picker
           * An object that is used when creating the internal {@link Ext.picker.Date} component or a direct instance of {@link Ext.picker.Date}
           * Defaults to true
           * @accessor
           */
          picker: true,
  
          /**
           * @cfg {Boolean}
           * @hide
           * @accessor
           */
          clearIcon: false,
  
          /**
           * @cfg {Object/Date} value
           * Default value for the field and the internal {@link Ext.picker.Date} component. Accepts an object of 'year',
           * 'month' and 'day' values, all of which should be numbers, or a {@link Date}.
           *
           * Example: {year: 1989, day: 1, month: 5} = 1st May 1989 or new Date()
           * @accessor
           */
  
          /**
           * @cfg {Boolean} destroyPickerOnHide
           * Whether or not to destroy the picker widget on hide. This save memory if it's not used frequently,
           * but increase delay time on the next show due to re-instantiation. Defaults to false
           * @accessor
           */
          destroyPickerOnHide: false,
  
          /**
           * @cfg {String} dateFormat The format to be used when displaying the date in this field.
           * Accepts any valid date format. You can view formats over in the {@link Ext.Date} documentation.
           * Defaults to `Ext.util.Format.defaultDateFormat`.
           */
          dateFormat: null,
  
          /**
           * @cfg {Object}
           * @hide
           */
          component: {
              useMask: true
          }
      },
  
      initialize: function() {
          this.callParent();
  
          this.getComponent().on({
              scope: this,
              masktap: 'onMaskTap'
          });
  
          this.getComponent().input.dom.disabled = true;
      },
  
      syncEmptyCls: Ext.emptyFn,
  
      applyValue: function(value) {
          if (!Ext.isDate(value) &amp;&amp; !Ext.isObject(value)) {
              return null;
          }
  
          if (Ext.isObject(value)) {
              return new Date(value.year, value.month - 1, value.day);
          }
  
          return value;
      },
  
      updateValue: function(newValue) {
          var picker = this._picker;
          if (picker &amp;&amp; picker.isPicker) {
              picker.setValue(newValue);
          }
  
          // Ext.Date.format expects a Date
          if (newValue !== null) {
              this.getComponent().setValue(Ext.Date.format(newValue, 'H:i'));
          } else {
              this.getComponent().setValue('');
          }
  
          if (this._picker &amp;&amp; this._picker instanceof Plugin.picker.Time) {
              this._picker.setValue(newValue);
          }
      },
  
      /**
       * Updates the date format in the field.
       * @private
       */
      updateDateFormat: function(newDateFormat, oldDateFormat) {
          var value = this.getValue();
          if (newDateFormat != oldDateFormat &amp;&amp; Ext.isDate(value)) {
              this.getComponent().setValue(Ext.Date.format(value, 'H:i'));
          }
      },
  
      /**
       * Returns the {@link Date} value of this field.
       * If you wanted a formated date
       * @return {Date} The date selected
       */
      getValue: function() {
          if (this._picker &amp;&amp; this._picker instanceof Plugin.picker.Time) {
              return this._picker.getValue();
          }
  
          return this._value;
      },
  
      /**
       * Returns the value of the field formatted using the specified format. If it is not specified, it will default to
       * {@link #dateFormat} and then {@link Ext.util.Format#defaultDateFormat}.
       * @param {String} format The format to be returned
       * @return {String} The formatted date
       */
      getFormattedValue: function(format) {
          var value = this.getValue();
          return (Ext.isDate(value)) ? Ext.Date.format(value, format || 'H:i') : value;
      },
  
      applyPicker: function(picker, pickerInstance) {
          if (pickerInstance &amp;&amp; pickerInstance.isPicker) {
              picker = pickerInstance.setConfig(picker);
          }
  
          return picker;
      },
  
      getPicker: function() {
          var picker = this._picker,
              value = this.getValue();
  
          if (picker &amp;&amp; !picker.isPicker) {
              picker = Ext.factory(picker, Plugin.picker.Time);
              if (value != null) {
                  picker.setValue(value);
              }
          }
  
          picker.on({
              scope: this,
              change: 'onPickerChange',
              hide  : 'onPickerHide'
          });
          Ext.Viewport.add(picker);
          this._picker = picker;
  
          return picker;
      },
  
      /**
       * @private
       * Listener to the tap event of the mask element. Shows the internal DatePicker component when the button has been tapped.
       */
      onMaskTap: function() {
          if (this.getDisabled()) {
              return false;
          }
  
          if (this.getReadOnly()) {
              return false;
          }
  
          this.getPicker().show();
  
          return false;
      },
  
      /**
       * Called when the picker changes its value
       * @param {Ext.picker.Date} picker The date picker
       * @param {Object} value The new value from the date picker
       * @private
       */
      onPickerChange: function(picker, value) {
          var me = this;
  
          me.setValue(value);
          me.fireEvent('change', me, me.getValue());
      },
  
      /**
       * Destroys the picker when it is hidden, if
       * {@link Ext.field.DatePicker#destroyPickerOnHide destroyPickerOnHide} is set to true
       * @private
       */
      onPickerHide: function() {
          var picker = this.getPicker();
          if (this.getDestroyPickerOnHide() &amp;&amp; picker) {
              picker.destroy();
              this._picker = true;
          }
      },
  
      reset: function() {
          this.setValue(this.originalValue);
      },
  
      // @private
      destroy: function() {
          var picker = this._picker;
  
          if (picker &amp;&amp; picker.isPicker) {
              picker.destroy();
          }
  
          this.callParent(arguments);
      }
      //&lt;deprecated product=touch since=2.0&gt;
  }, function() {
      this.override({
          getValue: function(format) {
              if (format) {
                  //&lt;debug warn&gt;
                  Ext.Logger.deprecate("format argument of the getValue method is deprecated, please use getFormattedValue instead", this);
                  //&lt;/debug&gt;
                  return this.getFormattedValue(format);
              }
              return this.callOverridden();
          }
      });
  
      /**
       * @method getDatePicker
       * @inheritdoc Ext.field.DatePicker#getPicker
       * @deprecated 2.0.0 Please use #getPicker instead
       */
      Ext.deprecateMethod(this, 'getTimePicker', 'getPicker');
      //&lt;/deprecated&gt;
  });
  </code></pre>
  
  <hr>
  
  <p>in app.js</p>
  
  <pre><code>launch: function() {
  
      Ext.Viewport.add([
      {
          xtype: 'loginview'
      },
      {
          xtype: 'mainview'
      }
      ]);
  
      Ext.Loader.setPath('Plugin', './plugin');
  }
  </code></pre>