Saving projects in Default folder

When I save my projects I can see the file saved in the Home user folder. It would be better if I could save my projects in a folder (named “Gantt projects” e.g.) wherever I want, but I couldn’t find any option in the settings window and nowhere else.
Is it possible to set a different default folder?

GanttProject remembers the last used folder, so if you save one project in “Gantt projects”, it will become the default for file save/open operations.

I can’t save projects in any other folder than the Home user folder. I always receive the error “Access denied”. Is it only possible to save to a folder within the user folder?

GanttProject does not enforce any restrictions, it is operating system and file system which may reject writes to some folders because of user permissions.
If you’re not an administrator on the computer where you run GanttProject then yes, chances are that you do not have permissions to write anywhere but your home folder.

Can you attach the log file contents? Help > View log

Thanks for your response. I am the administrator on this PC.

Here’s the log file content:
C:\Users\Nina\ganttproject.log

GanttProject 2.8.7 Pilsen (build 2256)
Settings file:
location: C:\Users\Nina.ganttproject
size:4949
is readable: true
java.class.path: eclipsito.jar;C:\Program Files\GanttProject-2.8
java.home: C:\Program Files\Java\jre1.8.0_171
java.ext.dirs: C:\Program Files\Java\jre1.8.0_171\lib\ext;C:\WINDOWS\Sun\Java\lib\ext
java.io.tmpdir: C:\Users\Nina\AppData\Local\Temp
java.runtime.version: 1.8.0_171-b11
java.vendor: Oracle Corporation
java.vm.name: Java HotSpot™ Client VM
java.vm.vendor: Oracle Corporation
java.vm.version: 25.171-b11
os.arch: x86
os.name: Windows 10
os.version: 10.0
sun.java.command: org.bardsoftware.eclipsito.Boot ganttproject-eclipsito-config.xml -log true
user.country: GB
user.dir: C:\Program Files\GanttProject-2.8
user.home: C:\Users\Nina
user.language: en
user.timezone: Europe/Berlin

Jul 03, 2018 11:37:47 AM net.sourceforge.ganttproject.GPLogger log
INFO: Options file:C:\Users\Nina.ganttproject
Jul 03, 2018 11:37:48 AM net.sourceforge.ganttproject.GPLogger log
INFO: Waiting until main window closes
Jul 03, 2018 11:37:48 AM net.sourceforge.ganttproject.GPLogger log
INFO: Deleting old auto-save files
Creating main frame…

  1. loading look’n’feels
    no editor for column=0 class=interface javax.swing.Icon
    no editor for column=1 class=interface javax.swing.Icon
    no editor for column=2 class=interface javax.swing.Icon
  2. loading options
  3. creating menus…
  4. creating views…
  5. calculating size and packing…
  6. changing language …
  7. first attempt to restore bounds
    Jul 03, 2018 11:37:49 AM net.sourceforge.ganttproject.GPLogger log
    INFO: Bounds stored in the options: java.awt.Rectangle[x=-8,y=-8,width=1936,height=1056]
  8. finalizing…
    Main frame created
    Jul 03, 2018 11:37:49 AM net.sourceforge.ganttproject.GPLogger log
    INFO: Bounds after setVisible: java.awt.Rectangle[x=-8,y=-8,width=1936,height=1056]
    Jul 03, 2018 11:37:49 AM net.sourceforge.ganttproject.GPLogger log
    INFO: Starting RSS check…
    Splash closed
    Resizing window…
    Jul 03, 2018 11:37:50 AM net.sourceforge.ganttproject.GPLogger log
    INFO: Bounds after opening: java.awt.Rectangle[x=-8,y=-8,width=1936,height=1056]
    Jul 03, 2018 11:37:50 AM net.sourceforge.ganttproject.GPLogger log
    INFO: Bounds stored in the options: java.awt.Rectangle[x=-8,y=-8,width=1936,height=1056]
    Jul 03, 2018 11:37:52 AM net.sourceforge.ganttproject.GPLogger log
    INFO: RSS check finished
    Jul 03, 2018 11:37:57 AM org.ganttproject.impex.htmlpdf.itext.ITextEngine$2 run
    INFO: Scanning font directories…
    Jul 03, 2018 11:37:57 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: scanning directory=C:\Program Files\Java\jre1.8.0_171/lib/fonts
    Jul 03, 2018 11:37:57 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: scanning directory=C:/windows/fonts
    no editor for column=0 class=interface javax.swing.Icon
    no editor for column=1 class=interface javax.swing.Icon
    no editor for column=2 class=interface javax.swing.Icon
    Jul 03, 2018 11:38:08 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: scanning directory=/usr/share/fonts/truetype
    Jul 03, 2018 11:38:08 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: directory /usr/share/fonts/truetype is not readable
    Jul 03, 2018 11:38:08 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: scanning directory=/System/Library/Fonts
    Jul 03, 2018 11:38:08 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: directory /System/Library/Fonts is not readable
    Jul 03, 2018 11:38:08 AM org.ganttproject.impex.htmlpdf.fonts.TTFontCache registerDirectory
    INFO: scanning directory=/C:/Program Files/GanttProject-2.8/plugins-2.8.7/org.ganttproject.impex.htmlpdf/resource/fonts
    Jul 03, 2018 11:38:08 AM org.ganttproject.impex.htmlpdf.itext.ITextEngine$2 run
    INFO: Scanning font directories completed
    Jul 03, 2018 11:39:17 AM net.sourceforge.ganttproject.GPLogger logToLogger
    WARNING: C:\Users\Nina\Desktop\GanttProject\testproject2.gan (Access is denied)
    java.io.FileNotFoundException: C:\Users\Nina\Desktop\GanttProject\testproject2.gan (Access is denied)
    at java.io.FileOutputStream.open0(Native Method)
    at java.io.FileOutputStream.open(Unknown Source)
    at java.io.FileOutputStream.(Unknown Source)
    at java.io.FileOutputStream.(Unknown Source)
    at net.sourceforge.ganttproject.document.FileDocument$1.(FileDocument.java:108)
    at net.sourceforge.ganttproject.document.FileDocument.getOutputStream(FileDocument.java:108)
    at net.sourceforge.ganttproject.document.ProxyDocument.getOutputStream(ProxyDocument.java:132)
    at net.sourceforge.ganttproject.document.ProxyDocument.write(ProxyDocument.java:198)
    at net.sourceforge.ganttproject.gui.ProjectUIFacadeImpl.saveProject(ProjectUIFacadeImpl.java:137)
    at net.sourceforge.ganttproject.gui.ProjectUIFacadeImpl.saveProjectAs(ProjectUIFacadeImpl.java:179)
    at net.sourceforge.ganttproject.GanttProject.saveAsProject(GanttProject.java:755)
    at net.sourceforge.ganttproject.action.project.SaveProjectAsAction.actionPerformed(SaveProjectAsAction.java:44)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.AbstractButton.doClick(Unknown Source)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access$500(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue$4.run(Unknown Source)
    at java.awt.EventQueue$4.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)

Do you have this folder on your computer?

Yes I do, the path is correct

And can you save files into that folder with other programs (e.g. Notepad) ?

Yes, I can save files into that folder with any program I’ve tried so far (Notepad, Notepad++, Word, Acrobat)

I found the problem! My Antivirus was blocking GanttProject. Now that I’ve unblocked it I can save to the folder :slight_smile:

1 Like

Wow, thanks for sharing the solution!