设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9179|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + y# ?9 a/ g' u% G; C( g
% T$ @; [8 E; ~8 w, i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# t% X, b* p2 ], @1 {/ o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ ^' G9 u- M' a4 Y) _1 g0 t& `# R
swarm.SignatureNotFoundException1 |+ w1 D# M" [3 `: v
        at swarm.Selector.<init>(Selector.java:76)
+ E# @- v- ^3 x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). o* D7 u( U" @0 J& a4 [3 [
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 L! v& o4 |  k6 z. D' Q: z" n
, c/ o- r) J" S, U$ s/ Y
9 L2 P' l1 s1 T0 n* nimport swarm.objectbase.SwarmImpl;" ^+ H" a5 f" {0 ~2 q& n0 t
import swarm.objectbase.Swarm;% F+ @& _- a1 ?1 O5 w! [
import swarm.activity.ScheduleImpl;
$ y, D3 M6 g1 |import swarm.activity.Activity;
; p4 Z# \2 A- W7 J: i3 Oimport swarm.activity.ActionGroupImpl;6 t5 I9 R& w1 c' @& t
import swarm.collections.ListImpl;- a$ w5 j: i1 c
import swarm.defobj.Zone;
" t) L- n9 w% f# qimport swarm.Globals;
7 v# H1 S" Y6 c# Wimport swarm.Selector;" S5 g" f& |* D  |1 t
import swarm.activity.ActionGroup;
; ]& {7 H# v; u9 e# J9 j$ v1 \class Agent {
  v# u1 U  [& \8 H. |3 L        char id;
! _. i5 g5 K6 {* B4 N% A2 _) O# D- e
        Agent(char id) {
& l! Z7 k( }& l, _, v                this.id = id;
" b: G* F2 q6 }) B9 i' M5 D& r        }
% F9 @/ L( @0 r7 [9 t4 J
/ e2 y6 R# j8 y4 ?: U        public void agentStep() {
4 f; Y  Q  _2 T                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 u) D9 n/ R' @1 o0 r        }: e9 F2 l: t3 v: L
}3 R! G/ u: b. T+ j
2 w. d: _6 i* i; B) Q5 T
public class ActionGroupDemo extends SwarmImpl {3 ~2 ?9 R( \3 X3 U2 N
        ScheduleImpl schedule;! n# N- B1 U/ i  q( Y1 s* e
        ActionGroupImpl actionGroup;
1 `1 s) a: a0 w+ Q+ [/ n) m) s5 L+ D        ListImpl list;
/ ]) B4 I, m( h3 d2 F        char Id = 'a';
9 i( v) s' @" N+ c  O2 ]8 B6 k( a4 R, ]7 u9 f
        ActionGroupDemo(Zone aZone) {8 ]- i: r  R# H5 @' G; u* s
                super(aZone);4 e; n$ y  G+ x/ V& d. H
                list = new ListImpl(aZone);
& A4 ^2 R9 U+ G5 t8 Z                swarmSetp();3 w2 E* d$ `+ |  F
                actionGroup = new ActionGroupImpl(aZone);) b- c1 ~5 d+ y+ Q
                schedule = new ScheduleImpl(aZone);
0 Y  d5 ]- m0 P' k/ g) U- O2 d* N                try {
5 N( I2 w! W' A- K                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 n3 [; u% e) J4 U5 L3 _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& u$ H; T$ J2 ^/ d# D; A$ X
                        
& v7 m% j' P) h+ o5 z$ r                        actionGroup.createActionForEach$message(list, agentSel);
  U5 u: ]! F( \6 i2 b  M                        actionGroup.createActionTo$message(this, swarmSel);
, d) I/ K# t8 b* u$ C6 q# O                        schedule.at$createAction(0, actionGroup);
" d) S( }& W) C, Q8 n( y" W                        schedule.at$createAction(1, actionGroup);
$ B: [+ g( K$ P- M, y* O3 g                        schedule.at$createAction(2, actionGroup);; O2 G9 b* T# x' h: \
" b7 a/ ?/ b$ b4 v( a4 Q- r) L9 d. n
                } catch (Exception e) {
& X5 d& ?8 D6 T1 H& L                        e.printStackTrace(System.err);
  r# a4 Q. [* r+ k                        //System.out.println(e);) u5 p( L( l& e* i" [9 @( ]! c. K
                        System.exit(1);
- y- T; S" ]% y) ?                }
! M" Q3 p9 w" g8 V5 D  b& c8 l3 G8 I5 F
+ l9 Z& l. m, N0 w9 M7 d
        }
) o* ~) q; S5 C+ M. P
$ L8 R9 P# e, k! E& ]        private void swarmSetp() {
4 d2 C& @. Q1 c5 S6 S! r                list.addLast(new Agent(Id));; t. Y3 t" x; U
                Id++;/ l  q0 @) `' f
        }2 p9 E. p$ |, S

& |+ j$ ?: O7 D  k/ F        public Activity activateIn(Swarm context) {
. W" r* n, \6 C" I+ c* B7 N4 B                super.activateIn(context);+ |; Z+ d2 b. p- P/ {
                schedule.activateIn(this);
, M. N& j! q$ b+ [( Q7 L                return getActivity();4 M& x* p' S# T
        }! c& ?, b# r' |8 a
3 R  g$ z% X; e% p4 |# |# ^
        public static void main(String[] args) {
7 l: X! A; F6 F5 z& |4 r- s( o- T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" l+ v' o5 F5 n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 q: b- S% J: i$ x0 b9 ^' ]                swarms.buildObjects();  K, j6 i3 L2 ^! @! h0 x) d2 y; |' R0 _
                swarms.buildActions();3 x1 T8 \1 L0 |/ B% [* L) u
                swarms.activateIn(null).run();
1 L  w6 R' j$ {, |7 O7 k1 I( I        }
& ?- z7 v7 f8 s7 W9 [; u+ G# I" N2 d3 @- K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-5-3 16:50 , Processed in 0.022185 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表