设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13801|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 j) @3 l& J! L) u
- T2 ?+ ?: f& O6 [( Y" v& X2 _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ W% f% e) e" B8 [以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: w8 e9 g, P+ V* Aswarm.SignatureNotFoundException
+ I8 z) s3 |. p& q1 j4 |8 Y+ I        at swarm.Selector.<init>(Selector.java:76)2 u9 O; D5 {. l" O) B( j* Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* K8 I! G' }; ^; t% K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" u& j# A. h7 X; K' J! D% a
* I8 x0 y: \8 E" H# Q' z) D7 r: X' F7 `9 ^
import swarm.objectbase.SwarmImpl;" V6 U. Y) ]& Q
import swarm.objectbase.Swarm;- y+ O7 ]' n3 v8 J! J
import swarm.activity.ScheduleImpl;: q- n% C2 Q& I+ k
import swarm.activity.Activity;  S- Z- E  S8 u
import swarm.activity.ActionGroupImpl;
& t. x+ t- g6 T+ ^2 f: _% _8 g- Timport swarm.collections.ListImpl;
: t( i( d8 e4 r/ m4 \( y1 Cimport swarm.defobj.Zone; 4 P7 U8 P/ U) }1 i
import swarm.Globals;
8 {! z9 i, m1 _) rimport swarm.Selector;" b; R+ v8 ]. g
import swarm.activity.ActionGroup; ! X* {9 C0 `  w7 }/ {4 `
class Agent {
9 e7 f0 D, X8 c; t; ^6 c- ~        char id;
1 i# n6 Z+ u# ~: V( U- L- B" ~4 V* @7 Z( k
        Agent(char id) {
( C3 _6 j4 U6 G! ]5 r                this.id = id;  |7 F4 Y9 n/ P" V
        }* T/ O+ X1 h" |; g: C' V) w
' S  J5 w# w5 l6 _/ g* R3 \
        public void agentStep() {
3 ]5 k  ^8 w% B/ G4 C  e; g: d                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 Z: R/ f. L% d" L* Y# v        }5 w* k. A7 |0 `
}5 w( F! C/ a3 C  x
) e" g3 `* U- a3 L5 Z
public class ActionGroupDemo extends SwarmImpl {# {0 V' x3 x- ]9 J
        ScheduleImpl schedule;( d# G3 Q0 Z! `6 \& ]
        ActionGroupImpl actionGroup;1 O7 U* C/ e& l. ^- a1 E
        ListImpl list;1 o: C3 _/ v% N( |
        char Id = 'a';
! K/ r8 B! Z$ i7 d3 _; h" V4 ?/ x
        ActionGroupDemo(Zone aZone) {3 O  |  y+ t- c+ d2 d) ~
                super(aZone);
# ]# N7 I+ p3 u                list = new ListImpl(aZone);
2 n! H& X* C5 W4 F7 P3 r8 s8 q                swarmSetp();
% j1 R$ n' @5 K9 h8 v6 t* ^" m' d                actionGroup = new ActionGroupImpl(aZone);- T2 p' s  Y+ b# [" x6 d
                schedule = new ScheduleImpl(aZone);4 v$ J1 `) q+ i4 }" a) H  d, Q
                try {
8 ?$ a; V  ]5 g2 W                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% ]0 R1 f$ [- @$ }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% R) x7 W( w1 s, U1 C* z9 v- O
                        ; |* ^2 k- C0 s# @$ z* d. [5 D
                        actionGroup.createActionForEach$message(list, agentSel);
5 a3 D3 f4 G: n                        actionGroup.createActionTo$message(this, swarmSel);
# c3 ~+ w. }1 b% r1 q                        schedule.at$createAction(0, actionGroup);: W2 H" Q8 k8 _; Q# G+ v
                        schedule.at$createAction(1, actionGroup);
+ b8 Q5 B3 l# F1 o                        schedule.at$createAction(2, actionGroup);
' }+ |8 b) k- y$ N7 t$ d5 M3 A7 s4 N! D" J
                } catch (Exception e) {+ F' R3 C; @# C: g! e- J4 b
                        e.printStackTrace(System.err);
. W8 P9 X- W( k5 i1 F6 m3 f; Q6 ]                        //System.out.println(e);
, O1 o2 _. h  }; J                        System.exit(1);) z  u( r$ f2 i' B" a4 y" x
                }
( R# n6 K4 }$ ^$ d2 K
6 `. L! n  i5 j/ I$ k, C! m# V: o' P: r) W! n  R% g& Z( T/ D
        }
- i: r" g0 K7 p$ }, W4 \% j9 X
+ i% K3 M$ s# p) z- [& i        private void swarmSetp() {( u. c& `0 o% _( M; K: Y3 U
                list.addLast(new Agent(Id));/ @  s% ]7 K9 U. T; m( S
                Id++;$ _% c/ n* k& r$ B( M" o
        }
* _0 C( C4 h/ e: V
; i. V1 V/ U1 t0 z9 u4 ~  g        public Activity activateIn(Swarm context) {. V# t3 p/ k" i: L6 W8 G7 I
                super.activateIn(context);' I8 `2 q" E. U
                schedule.activateIn(this);' q, t% c1 J$ P
                return getActivity();! b  @1 h- M+ k3 [% m1 }7 n
        }
. o4 H; |* D5 A9 E5 I- P$ C* j! P2 P( o  ?. y
        public static void main(String[] args) {
% n( i$ y8 T6 U# U0 y. o4 K" m, l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 l* p( U3 E  _2 W                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ I# w5 E8 Y$ {0 K( w/ ?1 Z' Z
                swarms.buildObjects();9 s$ P! ?  y1 u8 ^5 V6 }
                swarms.buildActions();" P) p; T! ~; p, \
                swarms.activateIn(null).run();4 r6 d, B3 a) u
        }9 u. h& _5 R9 Q

2 _2 F; j! y! a}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-18 01:06 , Processed in 0.016767 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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