小编Dan*_*lan的帖子

为什么我不能在我的config()中注入$ location?

为什么这会给我一个错误:

angular.module('app')
       .config(function($routeProvider, $locationProvider, $httpProvider, $location) {
Run Code Online (Sandbox Code Playgroud)

未捕获错误:未知提供商:来自应用的$ location

但是这条线路没有?

angular.module("app")
       .factory("SomeResource", 
               function($q, $resource, $http, $location, AuthenticationService, Base64) {
Run Code Online (Sandbox Code Playgroud)

这是相同的应用程序.可以config只得到供应商和factory唯一获得非供应商?

angularjs

26
推荐指数
2
解决办法
2万
查看次数

terraform 模块需要 required_providers 吗?

我对在 terraform 文档中读到的内容有点困惑。以下是关于模块的说明:

https://www.terraform.io/docs/language/modules/index.html

模块是一起使用的多种资源的容器。模块由保存在一个目录中的 .tf 和/或 .tf.json 文件的集合组成。

以下是关于提供商的说明: https ://www.terraform.io/docs/language/providers/requirements.html

要求提供者

每个 Terraform 模块必须声明它需要哪些提供程序,以便 Terraform 可以安装和使用它们。提供者要求在 required_providers 块中声明。

提供程序要求由本地名称、源位置和版本约束组成:

terraform {
 required_providers {
    mycloud = {
      source  = "mycorp/mycloud"
      version = "~> 1.0"
   }
 }
}
Run Code Online (Sandbox Code Playgroud)

我对此感到困惑,因为我从未required_providers在任何模块中指定过,即使我正在使用提供程序并且它说我必须这样做。直到今天我什至不知道文档这么说。

那么我是否误解了文档,或者文档是错误的?我的每个模块required_providers是否需要?我的 terraform 配置在没有它们的情况下肯定可以工作,那么它们是否默认为某些内容?如果是,如何以及在哪里?

terraform terraform0.12+

26
推荐指数
2
解决办法
3万
查看次数

使用Flying Saucer,如何在页脚的每个页面上生成包含页码和页面总数的pdf?

我花了更多的研究比我自己想要的更多,所以我将在这里发布一个全面的答案.似乎这样做的信息分散在许多不同的网站上,我想把它放在一个地方. 这个答案 可能是一回事,但我的眼睛茫然,因为它在Java字符串中,而不是在html模板中.这是问题:

我正在渲染PDF,我想在页面底部写一个页脚,上面写着"Page n of m",其中"n"是您所在的页码,"m"是文档中的总页数.我怎么做?

css java pdf flying-saucer xhtmlrenderer

25
推荐指数
2
解决办法
1万
查看次数

如何从Clojure错误中获得更好的反馈?

我发现在我的代码中调试Clojure错误与我使用的所有其他编程语言相比非常困难.我的主要编程语言是Java,我对Clojure很新.我写Clojure的大部分时间都花在试图弄清楚"为什么我得到这个错误?" 我想改变这一点.我正在使用CounterClockWise作为我的主要IDE.我不知道如何使用Emacs(但是?).

这是一个例子:

(ns cljsandbox.core)

(def l [1 2 3 1])

(defn foo
  [l]
  (->> l
    (group-by identity)
    ;vals  ;commented out to show my intent
    (map #(reduce + %))))
Run Code Online (Sandbox Code Playgroud)

在这里,我错误地认为group-by返回列表列表,但它实际上返回了一个地图,<key, list<value>>或者你用Java术语表示它.这会显示一条错误消息:

ClassCastException clojure.lang.PersistentVector无法强制转换为java.lang.Number clojure.lang.Numbers.add(Numbers.java:126)

这不是很有用,因为没有堆栈跟踪.如果我输入(e)它说:

java.lang.ClassCastException: clojure.lang.PersistentVector cannot be cast to java.lang.Number
 at clojure.lang.Numbers.add (Numbers.java:126)
    clojure.core$_PLUS_.invoke (core.clj:944)
    clojure.core.protocols/fn (protocols.clj:69)
    clojure.core.protocols$fn__5979$G__5974__5992.invoke (protocols.clj:13)
    clojure.core$reduce.invoke (core.clj:6175)
    cljsandbox.core$foo$fn__1599.invoke (core.clj:10)
    clojure.core$map$fn__4207.invoke (core.clj:2487)
    clojure.lang.LazySeq.sval (LazySeq.java:42)
Run Code Online (Sandbox Code Playgroud)

我不知道如何从这个错误消息中理解,"你以为你是在传递一个列表列表map但是你真的传递了一个map数据类型".堆栈跟踪显示问题是在内部报告的reduce,而不是group-byIMO 内部的报告,这不是我作为人类犯下的错误.这就是程序发现错误的地方.

这些问题可能需要15分钟才能解决.我怎样才能减少时间?


我知道期望动态语言能够捕获这些错误太过分了.但是,我觉得像javascript这样的其他动态语言的错误消息更有帮助.

我在这里非常绝望,因为我现在已经在clojure编写1-2个月了,我觉得我应该更好地解决这些问题.我尝试使用:pre/ :poston函数但是有一些问题 …

runtime-error clojure

24
推荐指数
1
解决办法
3481
查看次数

AngularJS是否具有功能反应式编程?

每当我看到功能反应式编程这一短语时,我意识到我不明白它是什么.然后我回到这个问题,想想我明白它是什么,然后循环重复.

示例不是另一种教学方式,它是教导阿尔伯特爱因斯坦的唯一方法

Angular是FRP的一个例子/实现吗?为什么或者为什么不?

functional-programming frp angularjs

23
推荐指数
2
解决办法
1万
查看次数

是否可以在Glassfish 3上使用Java 8?

我们目前使用Glassfish 3,我真的想使用Java 8.我尝试升级到Glassfish 4,但我在Glassfish 4代码中遇到了两个错误,所以我不得不恢复到Glassfish 3. Glassfish 3是否可以使用Java 8或将我必须升级我的应用程序容器?

java glassfish glassfish-3

23
推荐指数
2
解决办法
2万
查看次数

Eclipse中Clojure的代码格式化实用程序

我正在使用逆时针,但不幸的是他们尚未实现此功能.您有什么想法如何以"lispy"方式自动格式化我的Clojure代码?

eclipse code-formatting clojure counterclockwise

22
推荐指数
1
解决办法
1602
查看次数

如何从Jersey 1.0迁移到Jersey 2.0?

我正在尝试升级到Jersey 2.0并且我遇到了很多麻烦,因为泽西岛的groupIds和artifactIds已经完全改变了,我在Jersey文档中找不到迁移计划.

这是我的pom.xml以前看起来的样子,并编译好了:

        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.17</version>
        </dependency>
        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-servlet</artifactId>
            <version>1.17</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server-linking</artifactId>
            <version>1.17.1</version>
        </dependency>
        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-client</artifactId>
            <version>1.17.1</version>
        </dependency>
Run Code Online (Sandbox Code Playgroud)

这些应该改成什么? 这个无关的StackOverflow问题有点帮助,但我很难找到@Ref注释移动到的地方.


更新

  1. 它似乎@Ref不再存在,或者至少在文档中没有提到它.现在你使用了UriBuilder.
  2. 我在文档中找到了一个非常有用的部分来回答我的maven问题.
  3. HTTPBasicAuthFilter已更名为HttpBasicAuthFilter.注意大写.
  4. Client client = Client.create(); 已经成为 Client client = ClientBuilder.newClient();
  5. 这个:

        String json = client
            .resource(getBaseUrl() + url)
            .accept(MediaType.APPLICATION_JSON_TYPE)
            .get(String.class);
    
    Run Code Online (Sandbox Code Playgroud)

    已经成为

    String json = client
            .target(getBaseUrl())
            .path(url)
            .request(MediaType.APPLICATION_JSON_TYPE)
            .get(String.class);
    
    Run Code Online (Sandbox Code Playgroud)

jersey maven glassfish-2.x jersey-1.0 jersey-2.0

22
推荐指数
3
解决办法
2万
查看次数

什么是 Swift 中的部分应用闭包#1

我试图理解此崩溃报告,但无法理解,因为函数“applySettings()”不是从 init() 调用的,如崩溃报告中所示。Swift 中的“部分申请closure#1”是什么?

在此输入图像描述

这是 init() 函数所需的代码。

   public override init()
{
    super.init()
    
    discoverySession = AVCaptureDevice.DiscoverySession(deviceTypes: [AVCaptureDevice.DeviceType.builtInWideAngleCamera, AVCaptureDevice.DeviceType.builtInDualCamera, AVCaptureDevice.DeviceType.builtInTelephotoCamera, AVCaptureDevice.DeviceType.builtInDualWideCamera,
            AVCaptureDevice.DeviceType.builtInTripleCamera,
            AVCaptureDevice.DeviceType.builtInUltraWideCamera], mediaType: AVMediaType.video, position: .unspecified)
    
    detectLenses()
    
    checkForDeviceAuthorization()
    
    setZoomParams()
    
    sessionQueue.async { [unowned self] in
        self.configureSession()
    }

}
Run Code Online (Sandbox Code Playgroud)

xcode crash-reports ios swift swiftui

21
推荐指数
2
解决办法
1万
查看次数

在Intellij中,如何在断点处抛出异常?

我看到很多关于如何让Intellij打破异常的问题.我正在尝试做一些不同的事情:我想在断点处抛出异常,以便我可以看到如果在该代码处发生异常将会发生什么.

我已经找到了强迫这种方法的方法.例如,如果我有一个名为的变量willBeUsed,我可以点击一个断点并添加一个表示的表willBeUsed = null.这最终会触发NullPointerException .

但我处在一种情况,我想抛出一个IOException看看会发生什么.我无法欺骗我的代码.当我添加一个表示throw new IOException()它给我一个错误的手表时,"意外的令牌".

作为一种解决方法,我可以修改代码以抛出异常并重新部署.但我想知道是否有办法在调试器中执行此操作而不修改源代码.

java intellij-idea

20
推荐指数
3
解决办法
1万
查看次数