我正在使用Megaparsec并尝试解析算术的小解析器.
-- Arithmetic expressions
data Aexp = N Num
| V Var
| Mult Aexp Aexp
| Add Aexp Aexp
| Sub Aexp Aexp
deriving (Show, Eq, Read)
arithParser :: Parser Aexp
arithParser = V <$> strParser
<|> N <$> numParser
<|> Mult <$> arithParser <* tok "*" <*> arithParser
--boolParser :: Parser Bexp
strParser :: Parser Var
strParser = tok "\"" *> some (noneOf ("\n\r\"=[]{},:")) <* tok "\""
numParser :: Parser Num
numParser = (some (oneOf ['0' .. '9']) …Run Code Online (Sandbox Code Playgroud) 一直试图在linux上使用'lwjgl',当我从终端运行编译代码时遇到了问题.我正在使用lwjgl 3的稳定版本.
我从网站下载了lwjgl.jar并运行javac -cp lwjgl.jar: Main.java
编译代码的命令.然后我运行:java -cp lwjgl.jar: Main之后它会抛出这个错误;
[LWJGL] Failed to load a library. Possible solutions:
a) Set -Djava.library.path or -Dorg.lwjgl.librarypath to the directory that contains the shared libraries.
b) Add the JAR(s) containing the shared libraries to the classpath.
[LWJGL] Enable debug mode with -Dorg.lwjgl.util.Debug=true for better diagnostics.
Exception in thread "EndlessRunner" java.lang.UnsatisfiedLinkError: Failed to locate library: liblwjgl.so
at org.lwjgl.system.Library.loadSystemRelative(Library.java:100)
at org.lwjgl.system.Library.loadSystem(Library.java:71)
at org.lwjgl.system.Library.<clinit>(Library.java:43)
at org.lwjgl.system.MemoryAccess.<clinit>(MemoryAccess.java:17)
at org.lwjgl.system.Pointer.<clinit>(Pointer.java:22)
at org.lwjgl.glfw.GLFW.<clinit>(GLFW.java:562)
at Main.init(Main.java:31)
at Main.run(Main.java:78) …Run Code Online (Sandbox Code Playgroud)