设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6633|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# C4 o% _. {8 |& O; T1 l& U( N  ]. X9 n* _- t! Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( h7 q' o! `) f+ n% ^6 v9 h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ i2 ]" A2 [3 D, R% `& D
swarm.SignatureNotFoundException5 R! ]* r5 ?1 w
        at swarm.Selector.<init>(Selector.java:76)
4 a/ E3 l) d3 }) O, a% e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- K& T1 y+ Z0 X; k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)" u: i+ Y1 ?6 w- e
' ]) y1 k. d$ f+ G/ ^  Z
9 k- {& X1 D! l. H# @, [  R
import swarm.objectbase.SwarmImpl;$ V! S+ n" R* i
import swarm.objectbase.Swarm;! H  z9 q# C. A. Q4 t
import swarm.activity.ScheduleImpl;- _2 \/ u0 Z- b3 ]
import swarm.activity.Activity;
! Q) A7 f3 O" ]6 g9 H* Uimport swarm.activity.ActionGroupImpl;
. K( Q  b& n# `. @  {import swarm.collections.ListImpl;$ W# O8 J) E: J5 j
import swarm.defobj.Zone; 9 G  }, N8 V. g5 ~* U5 [) R# Z
import swarm.Globals;
# `2 [; t3 x% I6 vimport swarm.Selector;
( l% i' ?( ^$ x! Wimport swarm.activity.ActionGroup; 5 A! T0 |' x9 C* u$ l+ j
class Agent {
5 g7 M5 p4 i" ~/ \+ f+ Q        char id;
! o" G( X8 ^& I/ Y. {0 H
, ^, U# n5 Y+ I6 I        Agent(char id) {
0 D7 v- l5 a- b" N" I6 r) K! u' R                this.id = id;4 Y' @& z; r) h+ z# k
        }
# f# g' b$ L* t" m1 R
7 n$ F4 @8 j# D: X4 Q' c' K- H        public void agentStep() {
* F$ P6 Q2 C7 ~. `$ k; \' g                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 H" ~- `& d( H* `; }- [        }; n. V: J! S  a8 D9 }- H& R% l
}
# k1 T) w8 z6 y
6 d% d9 R! g- d0 ?' zpublic class ActionGroupDemo extends SwarmImpl {! I- d, Z- d. V( \/ K% s
        ScheduleImpl schedule;
; r  b* i, [' M+ g3 w8 w        ActionGroupImpl actionGroup;
' E) ^7 Q- J! j& h        ListImpl list;# O, o+ G" c" E' i# L$ Q
        char Id = 'a';& ]" W- l" k% n; |* R

: Y2 s+ W6 ?2 E% K' G3 T" l; s        ActionGroupDemo(Zone aZone) {' J0 T! X4 c0 h
                super(aZone);  i# I9 k4 M7 S# ~4 m
                list = new ListImpl(aZone);
, v, l9 ]2 m% n  L- p                swarmSetp();
8 r. T) E4 W6 W6 R  L                actionGroup = new ActionGroupImpl(aZone);
; k7 S7 i2 A9 B3 A8 m$ w                schedule = new ScheduleImpl(aZone);
8 v! o% r, i* q9 _, C2 }/ l9 {# u9 j# J                try {
9 G/ I- M: y, M8 E6 E) S* m! O1 V6 m                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 W* ~8 m! |4 U8 y) f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- U' Y% ]& y3 h! \  \                        3 P0 V* @8 R6 {: `5 W5 p
                        actionGroup.createActionForEach$message(list, agentSel);( t1 M5 Y5 u. N5 p" g5 e
                        actionGroup.createActionTo$message(this, swarmSel);
/ `7 z, n! r4 N6 `' A  J8 {$ J, @7 M, m/ W                        schedule.at$createAction(0, actionGroup);  S3 V! ^/ Z* D. v+ t4 F
                        schedule.at$createAction(1, actionGroup);
  T9 y4 S' L4 J0 M1 ]% z- A                        schedule.at$createAction(2, actionGroup);
6 _) A! K+ ^2 q1 s  H5 a& g7 C) R$ X% D  h- A# }4 P
                } catch (Exception e) {
4 V/ Y* U; p/ ~, k, u                        e.printStackTrace(System.err);
3 L7 a0 H3 i/ U4 a2 ?8 l: o# v* s9 A9 L0 e                        //System.out.println(e);
2 M* {% h/ T$ x+ ^8 Z: Q                        System.exit(1);
$ a5 s  Y2 Y. P+ V8 H0 w, f( A                }
+ m# D0 Q& N& p  Z, k# q7 c% q0 N4 ^, u! z" M1 L
3 u8 V9 t3 }2 O, c' V, h
        }
+ q9 f! L$ b; h5 r  ~. G+ |. `& ?+ V( ?1 x! x6 R8 |$ `( `& b! ^
        private void swarmSetp() {7 ]' ^% l' {* b+ P
                list.addLast(new Agent(Id));, ^( x+ v. J6 C4 i2 ]9 U
                Id++;" _0 C$ B, r, \
        }+ |* t: h) k7 c& B. }" I
' B5 w" z7 l9 D% r& v7 o
        public Activity activateIn(Swarm context) {
8 X/ V. S% n, Q" W; l! r                super.activateIn(context);
: T% Y" e7 F& M  ]                schedule.activateIn(this);; ?% H& X% J$ W5 p2 i
                return getActivity();
1 B- m& }" e; P! n        }
2 [. |# T9 ^* C- Z# E. o
6 L. ], g) }2 |4 c: Y: w) h& r        public static void main(String[] args) {% e0 N: A! A, o& r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 C6 ]9 C5 ^8 @  \; n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; L: `" p3 |& ~" D# d
                swarms.buildObjects();" \  {3 G2 Y6 r' C# P* T
                swarms.buildActions();
6 N) D7 o8 t3 e' r) ]; s                swarms.activateIn(null).run();
$ ^2 G: d5 `/ C        }
5 @! j' f5 V0 O1 X0 Z- g9 `( _+ u9 f+ K$ ?9 b9 O) G: b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-3 21:29 , Processed in 0.015329 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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