This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320F2.8377万S:将DSS文件编译为.jar文件

Guru**** 2489685 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/639400/ccs-tms320f28377s-compiling-dss-files-into-a-jar-file

部件号:TMS320F2.8377万S

工具/软件:Code Composer Studio

我有一个.java文件,用来写入主板上特定的闪存部分。 我正在使用DSS Java库。

我通过在终端上运行以下命令来创建.class文件:

javac -cp "/Applications/ti/ccsv6/CCS_base/DebugServer/packages/ti/dss/java/com.ti.ccStudio.scripting.environment_dss.0.jar" 3.1 :"/Applications/ti/ccsv6/csbase/dss_gServer/dss/ti/jar/com.ti.debug.engine_1.0 .0.facks/java/base/java/packages/svti/jar/base/packages/ flasher.java 

然后运行.class:

Java -cp ".":"/Applications/ti/Ccsv6/CCS_base/DebugServer/packages/ti/dss/java/dss.jar":"/Applications/ti/ccsv6/CCS_base/DebugServer/packages/ti/dss/java"闪光灯 

我想创建一个可以从终端调用的.jar文件。

到目前为止,我尝试了以下命令:

Jar -cfve flasher.jar主flasher.class 

当我运行生成的.jar文件时,我会遇到诸如‘找不到或加载主类flasher.jar’之类的错误。

使用所有DSS库编译.jar文件的正确方法是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,
    是否在jar文件的清单文件中指定了主类?

    谢谢
    KI
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已使用以下命令指定清单文件。

    jar -cvfm flasher.jar manifest.txt flasher.class 

    我的manifest.txt如下所示:

    主舱:flasher.class
    类路径:。  /Applications/ti/Ccsv6/CCS_base/DebugServer/packages/ti/DSS/java/dss.jar /Applications/ti/ccsv6/CCS_base/DebugServer/packages/ti/DS/java

    运行生成的.jar文件时,出现以下错误:

    Fasher(maor)> Java -jar flasher.jar
    错误:找不到或无法加载主类flasher.class 

    查看已创建的清单,我会看到以下内容:

    flasher(master)> unzip -p flasher.jar meta-INF/manifest.mf
    清单版本:1.0
    类路径:。 /Applications/ti/Ccsv6/CCS_base/DebugServer/packages/ti/
    DSS) Java/Applications/ti/ccsv6/CCS_base/DebugServer/packages dss.jar
    /ti/DSS/Java
    Created-by:1.8 .0_111 (Oracle Corporation)
    Main-Class:flasher.class 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尝试删除主类定义中的.class扩展名:

    主舱:闪光灯
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    工作正常! 我可以使用 java -jar flasher.jar命令运行生成的.jar文件

    我还希望flasher.jar文件是独立的。 我修改了manifest.txt ,并 将  /Applications/ti/ccsv6/CCS_base/DebugServer/packages/ti/DSS/的内容复制 flasher.jar的同一目录 中,但我无法使其正常运行。 我更新 的manifest.txt 是:  

    主舱:闪光灯
    类路径:。 /java/dss.jar ./*

    如果我将类路径更改为以下内容并创建新的.jar文件,它将正常运行:

    类路径:。 /Applications/ti/Ccsv6/CCS_base/DebugServer/packages/ti/DSS/java/dss.jar /Applications/ti/ccsv6/CCS_base/DebugServer/packages/ti/DSS/

    尝试打开调试服务器会话时出现错误。 该行是:

    debugSession = debugServer.openSession("Texas Instruments XDS100v2 USB调试探头/C28xx_CPU1"); 

    我收到的错误是   :SEVERE:Can not connect to DebugServer (严重:无法连接到DebugServer)。 未找到路径: '/Users/<username>/<dirOne>/bin'

    我运行的文件来自 :/Users/<username>/<dirOne>/<dirTwo>/flasher/build/ flasher.jar

    我是否应该在目录中包含更多文件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想我知道发生了什么。 它看起来像一些文件(可能是 dss.jar)调用与其路径相关的其他文件,并最终在目录中上下移动。 如果 我将 /Applications/ti/ccsv6/cs_base/的内容放在  flasher.jar 所在的项目目录中,并且将清单文件更改为以下内容,则.jar将运行:

    主舱:闪光灯
    类路径:。 ./CCS_base/DebugServer/packages/ti/dss/java/dss.jar ./CCS_base/DebugServer/packages/ti/dss/java