设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12739|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 O9 T* q$ ?& J* ^' a
" m0 I  }( c2 A6 R4 k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' H8 O5 o* T' r- [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, J' U# R  u0 `, a( M) [swarm.SignatureNotFoundException& P6 K* i( a& n
        at swarm.Selector.<init>(Selector.java:76)
+ ?1 r" n5 q4 a/ f) c) V9 U; K        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): Y: d2 i, y, Q' m1 R: q0 Q  j# `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)" d9 o* U3 c7 ?8 U8 b' m- r
0 V3 o* t# f& b# c5 ?0 B/ E
5 K! L6 C& h9 V9 F" u* N4 d
import swarm.objectbase.SwarmImpl;* R( p! \; g5 |! }
import swarm.objectbase.Swarm;
5 [9 @" {# g  |8 Z, ]0 Eimport swarm.activity.ScheduleImpl;
/ z; _5 g$ S+ ~5 S8 e: i# Eimport swarm.activity.Activity;
) l0 P5 i: M# M. _( i. Z3 ?import swarm.activity.ActionGroupImpl;
' W, {( G+ L, b7 Iimport swarm.collections.ListImpl;% Y7 t) d1 B! L. I& n
import swarm.defobj.Zone; & K, s2 P7 |" _, c
import swarm.Globals;$ _+ z( R" l  T, E
import swarm.Selector;, G0 b& s2 F! s: M1 v% |/ ]
import swarm.activity.ActionGroup; " r5 X1 G% ~" d, J/ e4 N! N
class Agent {  [: f' n. w- M! J& i# ?' D: W  Y+ m: o' p
        char id;
5 n; p# e2 O) M8 W" N3 G! f8 |  ?4 p7 |' D8 \
        Agent(char id) {# k5 `/ A5 P+ }7 f
                this.id = id;6 J- ^/ \& Y+ |! _; z' j3 s
        }
8 V2 a- l7 ?( K- H3 o, k  o
$ T, I( _1 m( M6 ^        public void agentStep() {
* `/ O- E9 w2 O  _; a# l# C                System.out.println(id + ":" + Globals.env.getCurrentTime());/ y+ l: z" y: y4 y% u
        }
. Q; `7 S( _, n5 v9 S1 n+ R}! |1 I/ N2 K# o5 z2 B
/ @* x; R+ F, h2 \: b; d9 ]/ H3 n2 t
public class ActionGroupDemo extends SwarmImpl {1 n0 q4 C- J# _8 j
        ScheduleImpl schedule;; l& b; [2 J5 m. }9 N
        ActionGroupImpl actionGroup;
. z, l: F& g3 ?+ _" j3 G        ListImpl list;" S, {4 Q! _4 @. q: L6 b+ d
        char Id = 'a';7 k) C/ D0 r1 E6 T* E' z- n

0 V6 `6 H* s3 e: ^        ActionGroupDemo(Zone aZone) {" T& I* u' l6 ~$ C2 F; m
                super(aZone);* [# a% `/ e6 A8 j
                list = new ListImpl(aZone);6 J0 f/ z5 X7 X) [1 E
                swarmSetp();
# H, W6 O- e, y                actionGroup = new ActionGroupImpl(aZone);
1 d$ O3 u6 B! Z1 G# S) d5 j                schedule = new ScheduleImpl(aZone);
9 k, B* r, A& z8 m1 }% }                try {
/ t& x' }5 R% E: O  ^+ l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ }" f$ s1 J, o' p# @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 C% w- Z2 |- h* w0 f& c
                        
0 F% O  E+ o+ Q7 f8 R# v                        actionGroup.createActionForEach$message(list, agentSel);# S- \0 `# @$ g) b' E$ A+ P- R2 t
                        actionGroup.createActionTo$message(this, swarmSel);6 Q, t" U* `1 V" ~& b
                        schedule.at$createAction(0, actionGroup);5 J& f% c' m8 K. |
                        schedule.at$createAction(1, actionGroup);
3 R0 G2 [6 j- v, ]/ R" q$ L  c( F: h                        schedule.at$createAction(2, actionGroup);) S. N7 I/ l2 L) J1 R
2 g" v2 ~! ]) S
                } catch (Exception e) {7 c( {. O) V  w6 ~/ ]: I0 \+ s
                        e.printStackTrace(System.err);: p$ [6 m6 H5 T; |7 p  i( Y4 q; D
                        //System.out.println(e);' ~( j1 ~' a1 s
                        System.exit(1);
* B" i9 Z+ q: V7 f                }6 B$ F# ?4 i, T! y) o
* Z: j3 w$ M' [6 C; O  @3 _/ h

: W1 _1 I& y, T0 y  L6 @        }! @" V( f% z; b) z* B! Q1 o  K7 R& M
, |# J  `! O& I$ Y8 B
        private void swarmSetp() {
3 k0 I7 C! T3 {, ^4 ]( g/ }                list.addLast(new Agent(Id));
6 l  H* b! C/ |                Id++;
% ^- W4 _8 D3 A        }
% ?. ~( T5 a% o1 @+ Y4 c7 e3 l
' z6 O* q: J$ I" z: D( |) k  M        public Activity activateIn(Swarm context) {
3 L* z! q9 r! x- e: z) r                super.activateIn(context);
3 j* s# e6 p% H! X5 o2 N                schedule.activateIn(this);
+ l8 q3 G; C/ p4 Y+ o' a                return getActivity();$ ^1 `/ K# s0 _6 d$ D1 `" h
        }* ^6 w' ~$ r3 C/ U& T

3 H, u3 s, }% h" Z. O' H6 ?        public static void main(String[] args) {
, ]* E6 e5 b, s: _; Q  U, @: b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 _* U) W) Q; T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" E& H+ q9 o0 J6 a% z
                swarms.buildObjects();4 o7 \3 i2 R2 }0 B( a6 _
                swarms.buildActions();- u& R$ S) f. `* R' ~
                swarms.activateIn(null).run();
  z# U: i% T1 F5 E        }
# J) R7 L! r) [5 }2 g
) z- {3 B; r( N* u. t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-17 17:24 , Processed in 0.017118 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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