Eclipse rcp 从快捷方式运行时未创建文件夹
目前,我正在测试针对Windows平台(XP及以上)的EclipseRCP应用程序 我在运行时生成HTML页面。为了保存这些HTML页面,我还在运行时创建了一个文件夹 该文件夹是在exe文件所在的同一级别创建的。 下面是应用程序目录结构的外观:Eclipse rcp 从快捷方式运行时未创建文件夹,eclipse-rcp,installation,nsis,Eclipse Rcp,Installation,Nsis,目前,我正在测试针对Windows平台(XP及以上)的EclipseRCP应用程序 我在运行时生成HTML页面。为了保存这些HTML页面,我还在运行时创建了一个文件夹 该文件夹是在exe文件所在的同一级别创建的。 下面是应用程序目录结构的外观: MyApplication | |--MyApplication.exe |--Myapplication.ini |--artifacts.xml |--uninstall.exe |--configur
MyApplication
|
|--MyApplication.exe
|--Myapplication.ini
|--artifacts.xml
|--uninstall.exe
|--configuration
|--p2
|--plugins
|--workspace
|--cache (user defined folder)
|
|--system (this is the runtime created folder, generated HTML pages are saved here)
|
|---
以下是在运行时创建文件夹的代码:
String currentPath=System.getProperty("user.dir");
File folder = new File(currentPath+"/cache/system");
这一切都很好。
现在使用NSIS脚本,我在两个位置为“.exe”创建了快捷方式——一个在用户桌面上,另一个在StartMenu中
问题是,如果我从快捷方式运行应用程序,则不会创建文件夹。
应该做些什么来解决这个问题
创建快照的脚本是:
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\MyApplication.lnk" "$INSTDIR\MyApplication.exe"
CreateShortcut "$DESKTOP\MyApplication.lnk" "$INSTDIR\MyApplication.exe"
非常感谢您的任何意见/建议/解决方案。- 您应该使用一个简单的
或其他工具,在运行时检查用于println()
文件的路径是否正常
- 你真的调用文件夹创建吗?在这里,您只需显示路径是什么。要创建文件夹,请不要忘记调用
(或mkdir()
获取完整路径)mkdirs()
- 在NSIS端:快捷方式的“工作目录”可能错误。当NSIS处理
指令时,工作目录是从当前的CreateShortcut
设置的 为了确保设置快捷方式的工作目录字段,可以使用$OUTDIR
强制设置目录。要使用安装应用程序的目录,只需使用SetOutPath
$INSTDIR
SetOutPath $INSTDIR
- 我能看到的一个问题是:
如果您的安装位置位于C:\Program Files。。。。然后您可能必须以管理员身份启动eclipse。问题在于我的Java代码。当我从快捷方式启动应用程序时,代码
System.getProperty(“user.dir”)
将快捷方式位置视为安装目录。接受你的回答。谢谢。@JoeYo:不客气:)您是否尝试过通过在快捷方式中手动设置工作目录来更改user.dir
属性?如果是,请尝试在nsis中修复快捷方式创建。如何在快捷方式中手动设置工作目录?你指的是快捷方式指向的目标吗?这里的问题来自编程方面。。。所以我就这样做了。@JoeYo:我指的是在使用快捷方式时调用目标的目录。它是目标路径的附加设置。当nsis创建快捷方式时,它从当前输出路径设置。