我正在使用Maven2,我似乎无法在我的存储库中找到任何插件.我得到的错误就像
存储库元数据:'org.apache.maven.plugins'在存储库中找不到:myrepo
其中myrepo是我的存储库的名称.
我的问题是Maven如何知道在哪里找到插件?我的错误中有一个对元数据的引用,预期元数据在哪里以及必须采用什么格式?到目前为止,我没有太多运气寻找文件......
(我对使用中央回购的简单答案不感兴趣,我想知道为什么myrepo不工作.)
谢谢!
您可以使用$ {variablename}语法在log4j配置文件中使用系统属性.
您是否可以在其中包含Eclipse变量(如项目名称)和Maven变量(如工件ID),并在相应的构建期间替换它们?
我已经看到了至少三种在Java对象中获取依赖关系的方法,而没有将对象耦合到依赖项的创建;
依赖注入 - 一些框架基于外部配置将所需对象注入另一个对象,例如:Spring托管bean
依赖查找 - 类在某种目录服务中查找必需的依赖项,例如:Java EE容器中的JNDI查找
静态工厂 - 全局范围内的对象按需提供实例 - 标准Java SE API似乎充满了这些,例如:java.util.Logger.getLogger(name),java.util.Calendar.getInstance()
您可以提供哪种指导最适合某种情况?
看来Java无法根据参数的运行时类型选择最合适的方法实现,如此处所述.重述这个例子:
class Superclass {}
class Subclass extends Superclass {}
class Test {
public void aMethod(Superclass s) {...}
public void aMethod(Subclass s) {...}
}
Run Code Online (Sandbox Code Playgroud)
执行Test类的哪种方法取决于引用的类型,而不是实例的类型.同样,基于链接的示例:
Test aTest = new Test();
Superclass aSuper = new Subclass();
test.aMethod(aSuper);
Run Code Online (Sandbox Code Playgroud)
这是aMethod(Superclass s)执行,而不是aMethod(Subclass s).
我试图在侦听器模式上创建一个变体,其中侦听器通过接口插入,并且侦听器具有为接口的子类定义的方法.
作为我的意思的一个简单例子,说我正在构建一个可以插入功能的闹钟.
我想到的上面的实现看起来像一个接口Event,一个子类WakeUpEvent,以及一个EventListener需要实现的接口handle(Event evt).
我希望创建一个实现no-op的类handle(Event evt),handle(WakeUpEvent evt)如果监听器想要处理那种类型的事件.
当然,这种方法不会按原样运行instanceof- 显而易见的解决方案是运行时检查 - yuk.
我可以使用任何模式或方法来获得我想要的行为吗?
Java Servlet 规范(此处为 2.5 版本)包含一组包含有关所包含资源的信息的神奇属性,这似乎总是与 Java 的原则有些矛盾,即:
javax.servlet.include.request_uri
javax.servlet.include.context_path
javax.servlet.include.servlet_path
javax.servlet.include.path_info
javax.servlet.include.query_string
Run Code Online (Sandbox Code Playgroud)
API 文档中甚至没有具体指出,仅在规范中指出它是正确实现所必需的。
这种方法感觉非常错误,暴露了客户将使用和依赖的实现细节。为什么这些信息会以这种方式暴露?
在进行战争安装时,我一直看到Maven 2.2.1安装的奇怪行为.
有时,我会更新一个类,但更新的版本没有打包在mvn install生成的工件中.
到目前为止,我已经确定在目标目录中生成了更新的.class文件,并且生成的.war中的同名类不一样(修改了不同的日期,大小不同)
使用-X标志从命令行运行Maven会为类生成调试输出,如:
[DEBUG]*WEB-INF/classes/mypackage/MyClass.class是最新的.
我认为在缓存文件(?)之前我还遇到了同样的问题,这是Eclipse编译不完整,导致Maven构建中出现"未解决的编译问题"错误,而是来自Eclipse导出的工作工件.
我想构建一组表格参数,以便在动态中使用HTTP POST,但我不确定如何访问/构建LWP :: UserAgent动态使用的数据结构.
典型的示例代码将此结构作为请求传递.
my $response = $browser->post(
'http://example.com/postme',
[
'param1' => 'value1',
'param2' => 'value2'
],
);
Run Code Online (Sandbox Code Playgroud)
我有一组存储在哈希中的参数名称和值,我想在哈希数据的方括号中构建结构.那个结构是什么,我该怎么做我想做的事情?(你可以说,我不是perl专家!)
我希望能够通过JavaScript发送大量工作,以便在浏览器中始终保持响应.
我正在尝试采取的方法是将工作分块,将每个块传递给一个函数,然后通过setTimeout(func, 0)调用对其进行排队.
我需要知道所有工作何时完成,所以我将返回的计时器ID存储在地图中(id - > true | false).在我有计时器ID之后,在下一个代码块中将此映射设置为false,并且排队函数在完成时将映射设置为true ...当然,排队函数不知道其计时器ID.
也许有一个更好/更简单的方法...或者我可以根据需要操作地图的一些建议?
我有一些JavaScript从HTML文档中通过ID获取元素.
在一个特定场景中,document.getElementById(idString)方法在IE8兼容模式下返回null,但是jQuery等效方法有效.我需要弄清楚为什么原生呼叫不起作用.
这是一个例子:
var myId = "e_" + someId;
var myNativeDiv = document.getElementById(myId);
var myjQueryDiv = $("#" + myId);
alert(myNativeDiv + " - " + myjQueryDiv); // alerts "null - [Object object]"
Run Code Online (Sandbox Code Playgroud)
我已检查myId过该文档中的唯一内容.
任何调查途径都值得赞赏.
更新 - 实际上,myjQueryDiv也是空的,但我想jQuery使它不为空.但是,调用parentDom.find("#" + myId);确实返回了正确的元素,其中parentDom是我需要查找的元素的祖先.
我有一个带有数字列标签的矩阵,例如:
1,2,3
1,2,3
4,5,6
7,8,9
Run Code Online (Sandbox Code Playgroud)
当我将这些数据加载到R中的变量并使用as.matrix(read.table("myfile", sep=",", header=TRUE)并打印生成的矩阵时,列标题前面加上了X,这个额外的字符出现在图表等中:
X1 X2 X3
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
Run Code Online (Sandbox Code Playgroud)
我怎么能阻止这种行为?
java ×3
maven-2 ×3
javascript ×2
attributes ×1
caching ×1
eclipse ×1
install ×1
jquery ×1
listener ×1
log4j ×1
matrix ×1
perl ×1
plugins ×1
polymorphism ×1
queue ×1
r ×1
repository ×1
servlets ×1
settimeout ×1