我正在创建一个插件系统(我的第一次尝试),查看其他人的代码我正在尝试拼凑我自己的类加载器并从目录中加载插件(这些将是类文件)
我的问题是,每当我尝试使用类加载器加载类时,类加载器都找不到引用该程序的插件中的任何导入.(即:MyClass扩展插件,com.mgmc.plugins noclassdeffound)不同的命名空间?
一些示例代码:Classloader:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.mcgm.game.provider;
import com.mcgm.utils.Misc;
import com.mcgm.utils.Paths;
import java.awt.AWTPermission;
import java.io.*;
import java.net.MalformedURLException;
import java.net.SocketPermission;
import java.net.URL;
import java.security.CodeSigner;
import java.security.CodeSource;
import java.security.Permissions;
import java.security.ProtectionDomain;
import java.util.PropertyPermission;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author Tom
*/
public class GameClassLoader extends ClassLoader {
private final ProtectionDomain domain;
private final URL base;
public GameClassLoader(final URL url) {
base = …
Run Code Online (Sandbox Code Playgroud) 我已经和Grails工作了大约一个月了,而且我们目前正在使用angular,因此我们决定采用基于令牌的身份验证的REST方法.
不幸的是,在使用插件时,我遇到了一个我到目前为止无法解决的问题,我在尝试通过POST进行身份验证时收到的错误:
Object {email: "test@test.test", password: "TEST"}
Run Code Online (Sandbox Code Playgroud)
例外:
2014-11-17 15:25:29,509 [http-bio-8080-exec-8] DEBUG credentials.DefaultJsonPayloadCredentialsExtractor - Extracted credentials from JSON payload. Username: test@test.test, password: [PROTECTED]
2014-11-17 15:25:29,518 [http-bio-8080-exec-8] DEBUG rest.RestAuthenticationFilter - Trying to authenticate the request
2014-11-17 15:25:29,524 [http-bio-8080-exec-8] DEBUG authentication.ProviderManager - Authentication attempt using org.springframework.security.authentication.dao.DaoAuthenticationProvider
2014-11-17 15:25:29,563 [http-bio-8080-exec-8] DEBUG rest.RestAuthenticationFilter - Authentication failed: Dynamic method get<Artefact>Class(artefactName) requires a single String parameter
Run Code Online (Sandbox Code Playgroud)
我想请注意,我没有使用默认的"用户名"登录,而是将其更改为"电子邮件".这反映在我的配置中:
Config.groovy的Spring安全部分:
grails.plugin.springsecurity.active = true
grails.plugin.springsecurity.rejectIfNoRule = true
grails.plugin.springsecurity.fii.rejectPublicInvocations = false
grails.plugin.springsecurity.controllerAnnotations.staticRules = [
'/**': ['permitAll'],
]
grails.plugin.springsecurity.rememberMe.persistent = false …
Run Code Online (Sandbox Code Playgroud) 我目前正在将我的项目转移到Gradle,这个带有多个分支的项目目前正由Jenkins构建.
在Android Studio中构建应用程序之后,我已经推送了我的提交并遇到了一些障碍:Jenkins似乎不明白在哪里可以找到支持库.
A problem occurred configuring root project 'Android_Alpha_Gradle'.
A problem occurred configuring project ':HereAndNowAPI'.
Could not resolve all dependencies for configuration ':HereAndNowAPI:_debugCompile'.
Could not find com.android.support:appcompat-v7:19.0.0.
Searched in the following locations:
https://repo1.maven.org/maven2/com/android/support/appcompat-v7/19.0.0/appcompat-v7-19.0.0.pom
https://repo1.maven.org/maven2/com/android/support/appcompat-v7/19.0.0/appcompat-v7-19.0.0.jar
https://jcenter.bintray.com/com/android/support/appcompat-v7/19.0.0/appcompat-v7-19.0.0.pom
https://jcenter.bintray.com/com/android/support/appcompat-v7/19.0.0/appcompat-v7-19.0.0.jar
Required by:
Android_Alpha_Gradle:HereAndNowAPI:unspecified
Could not find com.android.support:support-v4:22.2.0.
Searched in the following locations:
https://repo1.maven.org/maven2/com/android/support/support-v4/22.2.0/support-v4-22.2.0.pom
https://repo1.maven.org/maven2/com/android/support/support-v4/22.2.0/support-v4-22.2.0.jar
https://jcenter.bintray.com/com/android/support/support-v4/22.2.0/support-v4-22.2.0.pom
https://jcenter.bintray.com/com/android/support/support-v4/22.2.0/support-v4-22.2.0.jar
Required by:
Android_Alpha_Gradle:HereAndNowAPI:unspecified
Run Code Online (Sandbox Code Playgroud)
显然这台机器是无头的,我不确定如何通过命令行安装Android Support Repository.有任何想法吗?