设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12909|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% |# u8 ~7 `7 s; R5 ]; ^* P6 }) K0 m( b# p  F" U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ Q( H; {. \5 ]7 H& n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: ~0 j" f8 W  p# y: @
swarm.SignatureNotFoundException9 ^! A! N, B$ ]3 k# n) K# A
        at swarm.Selector.<init>(Selector.java:76)
  P  V4 Z& D3 }0 W' p5 [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& p5 L- B3 B8 @
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 P; z1 z. w# z/ @; v% H6 B4 u* z/ z: j' k: d4 [0 k/ G/ v

# k" O$ c6 E7 a9 \3 qimport swarm.objectbase.SwarmImpl;/ s3 I. [" Y2 h1 A0 V2 l
import swarm.objectbase.Swarm;
" J1 s7 Q8 U- D3 s4 m0 z$ Wimport swarm.activity.ScheduleImpl;
/ f, `  W) a- r8 B$ yimport swarm.activity.Activity;9 a6 j9 G; ]' W' C( U5 M0 z
import swarm.activity.ActionGroupImpl;6 z9 u( R5 u$ w% r" U
import swarm.collections.ListImpl;" w' k# ]- J7 a
import swarm.defobj.Zone; 3 K7 k; X+ X$ ~, _
import swarm.Globals;  p8 b7 o' C5 h& w
import swarm.Selector;
6 R" d4 U/ f8 Z: V' A6 `; Q6 Kimport swarm.activity.ActionGroup; 7 B; p5 P& U) I  F
class Agent {
5 |2 X3 J0 `8 ?6 Z& {4 }        char id;6 o$ l' Z0 B# f6 `# }& N
+ ^' k( g6 X1 e5 I
        Agent(char id) {
4 R0 ^/ ~/ |8 ~' h1 q& f# W$ S                this.id = id;  R, L3 t- j: S6 k6 Q' E
        }/ b" Z; ]7 C. I; ]
1 B+ C) L1 ^5 U+ N% o$ I/ g! t
        public void agentStep() {
0 D6 P+ G& L# g7 Q3 B; w6 A                System.out.println(id + ":" + Globals.env.getCurrentTime());
* X& G- t3 O' C* q1 B$ D" U/ V        }
* H4 V6 x, A) b- k. @5 A3 t& L}3 d: [% Y+ b* v9 a
4 d( R& N2 P2 e6 S  i5 t! |& Y
public class ActionGroupDemo extends SwarmImpl {
4 C0 j3 k. m/ U1 {3 G( V' u        ScheduleImpl schedule;" I# F3 m& n9 Q8 ~
        ActionGroupImpl actionGroup;
, c& @6 j+ i' `8 v% p# o, x        ListImpl list;
) }- T3 t8 o8 M. J1 a& C' s        char Id = 'a';; Q0 c9 R4 X6 A9 \5 l% L  U. i

  x3 {" u8 q- d- O5 h1 F        ActionGroupDemo(Zone aZone) {( Q/ z$ M$ g2 Z) u) i1 B/ o6 m
                super(aZone);
/ `- V+ O6 A& H: r2 W# ~                list = new ListImpl(aZone);
( J* z3 r6 H" p  P, ]8 W                swarmSetp();9 F3 p" b6 `* a8 Y' I% p
                actionGroup = new ActionGroupImpl(aZone);, M) b' {; Y  K/ [
                schedule = new ScheduleImpl(aZone);2 D/ v/ d5 q6 _$ F) R/ C
                try {
: C, I+ k& ?  V7 O  d& G5 J                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& F% B; N3 ^3 e1 Z1 W8 }# g$ n
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 }" J- D2 `: y6 P. t, Q                        1 u0 b8 L& C' P: [6 g
                        actionGroup.createActionForEach$message(list, agentSel);1 `; g. y- W4 S# |/ z* {- q
                        actionGroup.createActionTo$message(this, swarmSel);' f  J- y, J2 s7 p5 ?) \
                        schedule.at$createAction(0, actionGroup);
1 P& s; v! k  R                        schedule.at$createAction(1, actionGroup);
+ [" t, P, o1 I! d, \- |1 u                        schedule.at$createAction(2, actionGroup);+ d0 o; b) S6 n2 C  E/ i$ S( z2 {

' b! s9 O' V/ t) `3 V$ X- v                } catch (Exception e) {7 N" N( K& `2 Q" N" c
                        e.printStackTrace(System.err);  a! p* k0 @  a
                        //System.out.println(e);7 T- f- l- x; ], v: @# V
                        System.exit(1);* s) ^/ \' t! f/ ~' t. w) S
                }" `/ W* C( x( |" [" L4 C
1 w3 z# _- h$ A  L
+ S" W$ l2 y" y. h0 w' T  o
        }
( X3 M1 f6 O! D3 t0 s- H1 h7 M7 D: Z: N: o
        private void swarmSetp() {
4 D2 F/ `, I8 U                list.addLast(new Agent(Id));, x, ~1 m% R; d. l2 X
                Id++;5 g7 ^! Z: f) Z; a# @$ E
        }
* d5 c, j& L) z2 M( t* K# @/ r% i2 x6 U% d2 J* `
        public Activity activateIn(Swarm context) {
  \- k( ]5 Q& M; n! B8 ~; e                super.activateIn(context);
6 C# z9 J& O+ M! ^) w" Z                schedule.activateIn(this);9 {, L6 [, R' l& `: Z$ A# Q0 {
                return getActivity();
2 S. C5 A2 c) _        }3 L, p5 `0 e# S! K. t- z
9 g$ a& n8 l- X! k: b# G; u
        public static void main(String[] args) {9 b% P  Y( o! K$ I! Z9 q$ p
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 H- y* p) e2 A: E/ j* o' n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: k: R6 W0 B7 W" h7 v                swarms.buildObjects();
$ |2 F5 w* l* I- t                swarms.buildActions();
  w4 v  W& @( I/ Q                swarms.activateIn(null).run();
' i3 w' M8 W4 A; p6 q. Y! o, c( z. w        }
- c9 t2 q# f2 Q3 U( ^6 u* E- Q( i5 d3 c* E+ C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-22 23:40 , Processed in 0.016807 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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