项目使用maven,包含进相关jar包,
重点是在main方法,我的application:
@Encoding(input = "UTF-8", output = "UTF-8")
@Modules(scanPackage = true)
@IocBy(type = ComboIocProvider.class, args = { "*js", "ioc/", "*anno", "psyduck.me.nutz", "*tx", "*async" })
public class Application {
private static final String NUTZ_FILTER = "nutz";
private static final String CONTEXT_PATH = "/";
public static void main(String[] args) throws ServletException {
FilterInfo nutzFilter = new FilterInfo(NUTZ_FILTER, NutFilter.class);
nutzFilter.addInitParam("modules", "psyduck.me.nutz.Application");
DeploymentInfo servletBuilder = Servlets.deployment()
.setClassLoader(DeploymentInfo.class.getClassLoader())
.setContextPath(CONTEXT_PATH).setDeploymentName("test.war")
.addFilter(nutzFilter)
.addFilterUrlMapping("nutz", "/*", DispatcherType.REQUEST)
.addFilterUrlMapping("nutz", "/*", DispatcherType.FORWARD);
DeploymentManager manager = Servlets.defaultContainer().addDeployment(servletBuilder);
manager.deploy();
HttpHandler servletHandler = manager.start();
PathHandler path = Handlers.path(Handlers.redirect(CONTEXT_PATH)).addPrefixPath(CONTEXT_PATH, servletHandler);
Undertow server = Undertow.builder().addHttpListener(9999, "localhost").setHandler(path).build();
server.start();
Runtime.getRuntime().addShutdownHook(new Thread(() -> server.stop()));
}
}
相关的import就不贴了.
这只是最基本的配置,全都是默认配置,需要修改的自己查一下文档吧.
然后是maven配置:
<build>
<resources>
<!-- 控制资源文件的拷贝 -->
<resource>
<directory>src/main/resources</directory>
<targetPath>${project.build.directory}/classes</targetPath>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.3</version>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>psyduck.me.nutz.Application</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>assembly</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
修改mainClass 为你的主类,然后打包运行一下试试吧.
ps:还是从springboot过来的,还是用嵌入式容器比较舒服