Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Hybirs中,如何将一个扩展中的类导入到另一个扩展中_Java_Spring_Hybris - Fatal编程技术网

Java 在Hybirs中,如何将一个扩展中的类导入到另一个扩展中

Java 在Hybirs中,如何将一个扩展中的类导入到另一个扩展中,java,spring,hybris,Java,Spring,Hybris,我正在Hybris中开发一个内部应用程序。像HMC。我已经创建了一个扩展并在extensioninfo.xml中添加了所需的扩展,但是当我试图在这些所需的扩展中导入bean时,我发现类无法解析。我已经完成了这个项目。但我无法解决这个问题。有人能指引我吗。我可以根据要求提供更多细节 <extensioninfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="extens

我正在
Hybris
中开发一个内部应用程序。像
HMC
。我已经创建了一个扩展并在
extensioninfo.xml
中添加了所需的扩展,但是当我试图在这些所需的扩展中导入
bean
时,我发现
类无法解析。我已经完成了这个项目。但我无法解决这个问题。有人能指引我吗。我可以根据要求提供更多细节

<extensioninfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="extensioninfo.xsd">

   <extension abstractclassprefix="Generated" classprefix="Sma" managername="SmaManager" managersuperclass="de.hybris.platform.jalo.extension.Extension" name="sma" usemaven="false">
      <!-- for more information on maven managed libraries please consult https://wiki.hybris.com/x/Nq8sDQ -->

      <!-- you should add all required extensions to this list, except platform extensions which are automatically required -->         
      <!-- <requires-extension name="cms"/> -->         

        <requires-extension name="services"/>
      <coremodule generated="true" manager="com.company.sma.jalo.SmaManager" packageroot="com.company.sma"/>

      <webmodule jspcompile="false" webroot="/sma"/>

   </extension>

</extensioninfo>

extensioninfo.xml
文件中,我们只添加扩展依赖项。因此,当您添加一个新的Hybris扩展名时,您需要将其添加到
localextensions.xml
文件中,以及所需的扩展名中。别错过了:

位于${HYBRIS_BIN_DIR}/platform/ext中的所有扩展都是 自动加载,无需将它们添加到localextensions.xml文件

然后,
ant clean all
将构建您的扩展资源

如果无法在IDE中解析扩展,则需要手动将它们添加到
生成路径中

[yjavac]1。无法将错误解析为Hybris中的类型

扩展可以相互依赖。只有当所需的扩展可用时,构建才会工作

确保以下步骤能够顺利进行


对非平台的依赖关系(不位于
/Platform/ext
)扩展
  • 所需的扩展应该位于
    localextensions.xml
  • 在依赖扩展名的
    extensioninfo.xml
    (例如
    )中添加所需的扩展名
  • 在eclipse(IDE)中,在依赖扩展的
    build path
    中添加所需的扩展以解决IDE依赖性

    注意:在IDE构建路径中添加所需的扩展不会解决平台的扩展依赖性。它只能通过
    extensioninfo.xml

  • 重建系统(
    ant clean all


对平台扩展的依赖关系 默认情况下,所有扩展都依赖于平台扩展(位于
/Platform/ext
)。因此,您不需要为
extensioninfo.xml
文件中的平台扩展指定
requires extension



你能显示extensioninfo.xml文件的代码吗?我不知道为什么我的xml没有被完全添加,你能试试命令
ant clean all
看看有没有错误吗?若并没有错误,也许你们会看到,
类无法通过IDE解决
原因。我已经做到了。我的应用程序上下文很好。我可以看到我的应用程序。但是我无法从所需的扩展导入类。问题在于构建路径。我不知道默认情况下应该将其添加到构建路径所需的扩展中,还是应该手动执行。您应该手动将所需的扩展(项目)添加到构建路径中。