我正在尝试使用Makefile编译linux内核模块:
obj-m += main.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
Run Code Online (Sandbox Code Playgroud)
这给了我:
main.c:54: warning: ISO C90 forbids mixed declarations and code
Run Code Online (Sandbox Code Playgroud)
我需要切换到C99.阅读后我注意到我需要添加一个标志-std = c99,不确定它在哪里添加.
如何更改Makefile以便它编译为C99?
我正在编写一个简单的servlet,并尝试在代码中创建我的一个类的实例DataStore.
此类是公共的,位于DataStore.java与Servlet代码相同的包中调用的文件中.
当我尝试在代码中创建一个新实例时:
DataStore dStore = new DataStore();
Run Code Online (Sandbox Code Playgroud)
我得到以下异常:
java.lang.ClassNotFoundException: backend.DataStore
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
at backend.AjaxServlet.createGame(AjaxServlet.java:196)
Run Code Online (Sandbox Code Playgroud)
我尝试在一个不同的文件中创建这个类的实例,它工作得很好.知道这可能是什么原因?