🐛 keep getting err and cant get output # bug
Describe the bug
this is what i get and it just basic mm dmg and player. i still have not got it to output anything. i fixed the rest of the trouble i was have this seem to be the last. ✅ OK| Finished reading config. 🔷 INFO| ⏳ Reading F:\CLI\5etools-src\data 🛑 ERR| Unable to read source file at path F:\CLI\5etools-src\data\book\book-.json (F:\CLI\5etools-src\data\book\book-.json) java.lang.NullPointerException at dev.ebullient.convert.io.Tui.readFile(Tui.java:521) at dev.ebullient.convert.io.Tui_ClientProxy.readFile(Unknown Source) at dev.ebullient.convert.config.CompendiumConfig.readSource(CompendiumConfig.java:143) at dev.ebullient.convert.tools.ToolsIndex.resolveSources(ToolsIndex.java:77) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:213) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:39) at picocli.CommandLine.executeUserObject(CommandLine.java:2031) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at dev.ebullient.convert.RpgDataConvertCli.executionStrategy(RpgDataConvertCli.java:263) at picocli.CommandLine.execute(CommandLine.java:2174) at dev.ebullient.convert.RpgDataConvertCli.run(RpgDataConvertCli.java:277) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:141) at io.quarkus.runtime.Quarkus.run(Quarkus.java:80) at io.quarkus.runtime.Quarkus.run(Quarkus.java:51) at io.quarkus.runner.GeneratedMain.main(Unknown Source) at [email protected]/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)
Expected Behavior
i getr the output folder and can copy it to obsidian
TTRPG CLI Version
the latest set
Which Operating Systems have you experienced this on?
- [ ] Android
- [ ] iPhone/iPad
- [ ] Linux
- [ ] macOS
- [x] Windows
This is a relatively common error, in your json config file. Do not leave any trailing commas or new lines. So if you have lets say:
Book {
DMG,
PHB,
MM
},
After the MM no comma or new line (enter or empty line after MM) should be there as that makes the CLI interpret the empty space as another source and since it can’t find anything for that source as its an empty space it panics and errors out. (If you used the app by Obsidian TTRPG Tutorials, don’t leave a comma after the las book in each category)
Hope this explains it :)
On 27. 9. 2025, at 7:19, vampeal @.***> wrote:
[https://avatars.githubusercontent.com/u/207491793?s=20&v=4]vampeal created an issue (ebullient/ttrpg-convert-cli#786)https://github.com/ebullient/ttrpg-convert-cli/issues/786 Describe the bug
this is what i get and it just basic mm dmg and player. i still have not got it to output anything. i fixed the rest of the trouble i was have this seem to be the last. ✅ OK| Finished reading config. 🔷 INFO| ⏳ Reading F:\CLI\5etools-src\data 🛑 ERR| Unable to read source file at path F:\CLI\5etools-src\data\book\book-.json (F:\CLI\5etools-src\data\book\book-.json) java.lang.NullPointerException at dev.ebullient.convert.io.Tui.readFile(Tui.java:521) at dev.ebullient.convert.io.Tui_ClientProxy.readFile(Unknown Source) at dev.ebullient.convert.config.CompendiumConfig.readSource(CompendiumConfig.java:143) at dev.ebullient.convert.tools.ToolsIndex.resolveSources(ToolsIndex.java:77) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:213) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:39) at picocli.CommandLine.executeUserObject(CommandLine.java:2031) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at dev.ebullient.convert.RpgDataConvertCli.executionStrategy(RpgDataConvertCli.java:263) at picocli.CommandLine.execute(CommandLine.java:2174) at dev.ebullient.convert.RpgDataConvertCli.run(RpgDataConvertCli.java:277) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:141) at io.quarkus.runtime.Quarkus.run(Quarkus.java:80) at io.quarkus.runtime.Quarkus.run(Quarkus.java:51) at io.quarkus.runner.GeneratedMain.main(Unknown Source) at @.***/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)
Expected Behavior
i getr the output folder and can copy it to obsidian
TTRPG CLI Version
the latest set
Which Operating Systems have you experienced this on?
- Android
- iPhone/iPad
- Linux
- macOS
- Windows
— Reply to this email directly, view it on GitHubhttps://github.com/ebullient/ttrpg-convert-cli/issues/786, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BHLGAB6XSWVDF2JALNU3Q6D3UYM5TAVCNFSM6AAAAACHUUMO42VHI2DSMVQWIX3LMV43ASLTON2WKOZTGQ2TSNZYGA2TCNA. You are receiving this because you are subscribed to this thread.Message ID: @.***>
i tried that and got this ✅ OK| Finished reading config. 🔷 INFO| ⏳ Reading F:\CLI\5etools-src\data java.lang.NullPointerException at dev.ebullient.convert.io.Tui.readFile(Tui.java:521) at dev.ebullient.convert.io.Tui_ClientProxy.readFile(Unknown Source) at dev.ebullient.convert.config.CompendiumConfig.readSource(CompendiumConfig.java:143) at dev.ebullient.convert.tools.ToolsIndex.resolveSources(ToolsIndex.java:77) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:213) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:39) at picocli.CommandLine.executeUserObject(CommandLine.java:2031) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at dev.ebullient.convert.RpgDataConvertCli.executionStrategy(RpgDataConvertCli.java:263) at picocli.CommandLine.execute(CommandLine.java:2174) at dev.ebullient.convert.RpgDataConvertCli.run(RpgDataConvertCli.java:277) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:141) at io.quarkus.runtime.Quarkus.run(Quarkus.java:80) at io.quarkus.runtime.Quarkus.run(Quarkus.java:51) at io.quarkus.runner.GeneratedMain.main(Unknown Source) at [email protected]/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)
reinstalled from auto infull all files are there still get null point. why i cant figure it out reinstalled java and git as well
You should really share the config file you're using. Only so much anyone can do without seeing what you're inputting into the tool.
Will do as soon as I get home tonight to make sure you want the my config file the program makes
Config file is something you make, not the program, but otherwise yes. Should look something like this.
{ "sources" : { "adventure" : [ "LMoP" ], "book" : [ "xPHB", "xDMG", "xMM" ], "reference" : [ "MM" ], "homebrew" : [ "" ] }, "paths" : { "rules" : "/3-Mechanics/CLI", "compendium" : "/3-Mechanics/CLI" }, "images" : { "copyInternal" : true, "copyExternal" : false, "internalRoot" : "5etools-img" }, "yamlStatblocks" : true, "reprintBehavior" : "newest", "useDiceRoller" : true, "tagPrefix" : "ttrpg-cli", "template" : { "background" : "examples/templates/tools5e/images-background2md.txt", "monster" : "examples/templates/tools5e/monster2md-yamlStatblock-body.txt", "item" : "examples/templates/tools5e/images-item2md.txt", "race" : "examples/templates/tools5e/images-race2md.txt", "spell" : "examples/templates/tools5e/images-spell2md.txt" } }
My whole config file as requested I don’t see anything wrong with it. If you can please I would love to help.
Remove the entire line that has "" in your list of homebrew sources. If you want no homebrew, don't have any lines, empty or otherwise, in that list.
I should probably filter out empty lines..
but in general, neither JSON nor YAML are particularly forgiving formats. The docs have lots of links to linters, and those will catch typos and syntax errors.
Fixed by 5b1aedcf32d88660d326027bcfdd5954fd4bb852?
I tried? =) I hope so.
It won't fix commas or otherwise bad syntax.. but it should no longer barf on empty strings.