设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5366|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 Z+ r) w' }2 M) x  I1 T1 s& N4 j# g  m

) b6 j2 \; |, u! X; A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ g2 m, j2 H8 ~- Y- ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; e: z, z$ D/ ~, s9 rswarm.SignatureNotFoundException
# N/ U" h+ n4 S1 Y        at swarm.Selector.<init>(Selector.java:76)
  e/ n9 ]) W# H! a        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& U4 j/ t( q2 {1 d' s; F/ Y2 i- v
        at ActionGroupDemo.main(ActionGroupDemo.java:67)* ~& S: ^  E2 y) V
4 S. e. n0 F* V5 ?( P2 s
8 z8 k, v! e5 T9 f6 @( e
import swarm.objectbase.SwarmImpl;
/ ]: X6 D$ ]% ~( J, R+ Dimport swarm.objectbase.Swarm;( e( Z' |% l. P# V6 \$ f# x
import swarm.activity.ScheduleImpl;; Q6 E# r- r8 n4 L' ~+ w$ j
import swarm.activity.Activity;
5 |6 @- l# d6 y) u1 _import swarm.activity.ActionGroupImpl;0 X! X. A( @& \
import swarm.collections.ListImpl;
# D3 O! ~7 C+ G, uimport swarm.defobj.Zone; : s0 y% p3 g1 ~0 y
import swarm.Globals;
+ d7 @: S* Y1 T% mimport swarm.Selector;
$ b7 @7 O- k) Z/ F* ?' Rimport swarm.activity.ActionGroup;
# n$ a: y1 c6 H$ M% C. W- f4 ?class Agent {: h& ?/ Y0 A. f+ H2 U
        char id;' n  a& w0 B) g
3 m7 D) M6 w6 D% g: ^
        Agent(char id) {! n8 E+ c% e- ~% m! B  l, p
                this.id = id;
; B1 k' n4 k3 d  b/ J% t' j        }6 s% Q! B4 B# ?

8 v# X  E( y7 E" G, O        public void agentStep() {
4 h8 w$ o9 ^- M, A0 S                System.out.println(id + ":" + Globals.env.getCurrentTime());
; K' n# L( {% `. m6 g        }7 v& F9 ]' n3 i+ O6 T
}
6 _. K) c/ ^7 X
. r" \9 T. `7 _7 k# d# R' V) \public class ActionGroupDemo extends SwarmImpl {4 O: b9 ~% j; \5 [, E
        ScheduleImpl schedule;
! T8 \  e0 v7 z* {) {        ActionGroupImpl actionGroup;
3 B" c. k7 V/ b; l4 R) O  {: [        ListImpl list;2 r2 p4 x9 ]1 I2 v3 W5 y. d' L, ]* W
        char Id = 'a';) M. `8 I9 R) B5 [

1 j- P8 E0 q  c  q$ M9 |7 [        ActionGroupDemo(Zone aZone) {2 O! x& L2 N5 |# w, t) W
                super(aZone);! O2 g3 F/ k( s. Y7 ^
                list = new ListImpl(aZone);: N; M) R( c- o) y2 G
                swarmSetp();
; D" _# {7 Z( r# Q3 T6 y                actionGroup = new ActionGroupImpl(aZone);* I9 O$ |! H8 O6 |; m! `
                schedule = new ScheduleImpl(aZone);
8 p( ]& C2 a( T+ ]: Y: g                try {
1 X, S6 L; v4 n) b& V0 [# ]9 h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; i9 ^3 F7 m, D: d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 B& N0 j' W$ _" Y( ?2 u, _+ z6 ^                        6 ?" w+ E% v. R( K5 z
                        actionGroup.createActionForEach$message(list, agentSel);
" c# H" b* K' P% S                        actionGroup.createActionTo$message(this, swarmSel);9 f5 Y. i: s+ q& M* R, s, k' Y
                        schedule.at$createAction(0, actionGroup);
% G" ?+ D5 b2 S: }                        schedule.at$createAction(1, actionGroup);# W& X' c$ \! H
                        schedule.at$createAction(2, actionGroup);3 L4 f1 y# y9 s9 Q* @

* B3 K6 N+ m' c                } catch (Exception e) {/ K" a2 d+ q, Q& v# d# s, @$ |. o, t. a
                        e.printStackTrace(System.err);. ^) v9 f+ Z( {
                        //System.out.println(e);2 @9 u2 s5 r# M8 B
                        System.exit(1);; W( I4 P9 r7 Z& K5 b* y7 I
                }
0 e" i/ E6 C2 r) |9 w. @, q
* R  q6 E5 _: W# a
- o" _! q' x9 [1 p+ ?" E        }' F; W7 {: ^0 o- M; D( B  w! g- y
5 A2 m5 n) S0 ?! }1 c: H
        private void swarmSetp() {
" \; Z$ y7 }& J3 V  l                list.addLast(new Agent(Id));9 `9 l5 D" t1 L
                Id++;
$ v# n/ b# j) ?7 i        }5 x4 X9 b; |( H+ H" K& I

7 L0 W9 [+ U7 b6 Y        public Activity activateIn(Swarm context) {
/ `" F6 X+ |; g, R7 n; j5 E- d                super.activateIn(context);
: T1 L* }8 B' W" @. S/ Q                schedule.activateIn(this);8 ?# q8 _- w# c. Q! o
                return getActivity();
3 R# v7 b: s6 }8 c& n9 N6 |/ _4 C6 C        }
5 Q6 }. K8 `8 v" G8 u/ ^5 x* W; l+ y/ Z2 Z
        public static void main(String[] args) {$ Z, B; R6 j1 U# b2 ?+ J
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' T. v2 A& P% [7 j7 P( m6 i0 P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. b4 _$ i+ C4 @! |/ X- f
                swarms.buildObjects();
7 G4 n- C4 u6 {+ [                swarms.buildActions();, {( ~2 O4 l1 ?5 R4 f. O
                swarms.activateIn(null).run();
& Z, w+ e  V1 K% a; O        }
% }$ R% c1 ~  p' j* W" n
2 V2 `+ j% @* N% P) m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-6 12:02 , Processed in 0.016488 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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