当前位置: 首页 > 知识库问答 >
问题:

重写MATLAB默认静态javaclasspath的最佳方法

叶阳
2023-03-14

MATLAB被配置为在搜索用户可修改的动态路径之前搜索其静态java类路径。不幸的是,静态路径包含相当多的非常旧的公共库,因此如果您试图使用新版本,您可能最终加载错误的实现并得到错误。

从R2012b开始,MATLAB允许您通过将javaclasspath.txt文件放在preferences文件夹中来指定要添加到静态路径中的附加JAR,但这会将JAR添加到路径的末尾,而不允许您覆盖MATLAB中内置的JAR。

那么什么是最好的方法呢?

共有1个答案

许焕
2023-03-14

我得到了MathWorks的官方回应:

从MATLAB R2013a(也在R2012b中)起,通过在javaclasspath.txt中包含以下行,可以将类添加到静态Java类路径的前面:

<before>

在javaclasspath.txt中这一行之后的任何目录都将添加到静态Java类路径的前面。这是从R2013a起未记录的javaclasspath.txt的使用。

MATLAB按照以下顺序搜索classpath.txt:

>

  • 在启动目录中。从MATLAB 8.0(R2012b)开始,如果在那里发现文件,将显示一个警告,并将被忽略。

    在MATLABPATH环境变量的第一个目录中。(此环境变量在Linux上的bin/matlab shell脚本中使用,通常终端用户不使用)。

    尽管最终用户通常不使用第2点的MATLABPATH环境变量,但我们可以在一个变通方法中使用它,允许读取toolbox/local目录之外的自定义classpath.txt。

    在Windows上:

    您将需要创建MATLABPATH环境变量。它上的第一个目录应该是带有自定义类Path.txt的目录,您还需要添加toolbox\local目录作为第二个选项。因此,您可以在cmd提示符下执行以下操作:

  •  类似资料:
    • 问题内容: 我正在开发一个大型Django应用程序,其中绝大多数需要登录才能访问。这意味着我们在整个应用程序中都花了很多钱: 很好,只要我们记得将它添加到任何地方,它就可以很好地工作!可悲的是,有时我们忘记了,而且失败往往不是很明显。如果到视图的唯一链接是在@login_required页面上,则你不太可能注意到实际上无需登录即可进入该视图。但是,坏人可能会注意到,这是一个问题。 我的想法是反转系

    • 我试图理解重载和重写静态和非静态方法是如何工作的。事实上,我试图理解这些方法如何能够和不能出现在父类和子类中。我想出了下面的规则: 我们不能重写静态方法,只能隐藏它们。通过隐藏,我们的意思是在编译时根据引用变量类型决定执行哪个方法,而不是重写(,在运行时根据实例类型选择哪个方法执行)。 例如,让,然后隐藏. 我们可以重写实例方法。 例如重写. 两个或多个具有相同签名的方法不能以静态或非静态组合形式

    • 问题内容: 我现在使用的装饰器。无论如何,使其成为默认行为? 问题答案: 我在仪器项目中做到了这一点。我使用装饰器: 然后,我is_public()为无需登录即可访问的几个地方创建了一个装饰器:

    • 为什么输出是"静态A"?

    • 本文向大家介绍简单了解Java的默认和静态方法,包括了简单了解Java的默认和静态方法的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了简单了解Java的默认和静态方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 浅谈Java的默认和静态方法 允许在接口中声明默认方法和静态方法,是JDK1.8新增的特性。存在即合理,两者的出现,让接口

    • 当我注意到现在可以在接口中定义静态和默认方法时,我正在通过接口学习。 请解释两者的区别,如果有一个我们什么时候会使用它的例子,那就好了。界面上有点混乱。