设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7489|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% n- P2 c4 G+ R! E; b; _" M2 L% ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 W& Z& A: ~+ V- u1 N( c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 g$ e" w; E! L8 p
swarm.SignatureNotFoundException. p1 K4 n, z# z& J1 m+ F
        at swarm.Selector.<init>(Selector.java:76). Z9 W2 i. }+ N& `) a1 Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; ^% f  N5 ?  [! I, W( e# n        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! k) x! ~9 D8 j; s( t4 q* H& l2 [* k/ o

5 ?. ^7 P( U+ W- t+ O' G) T  \import swarm.objectbase.SwarmImpl;% |3 {2 l8 K5 I" M9 o
import swarm.objectbase.Swarm;" _3 R4 o; C5 H0 g' e
import swarm.activity.ScheduleImpl;6 h# G) ?1 z8 Y. n2 `
import swarm.activity.Activity;+ j+ s$ R" G! o" M# z# R# f
import swarm.activity.ActionGroupImpl;# ~% A. d: m' c# i( \5 L
import swarm.collections.ListImpl;+ R% d9 {6 g7 H' I
import swarm.defobj.Zone;
6 x* ?# S) j4 |. X, S4 I4 `/ D9 ^/ Timport swarm.Globals;% N6 a4 I" S) t: P- y" r: u
import swarm.Selector;
' P4 j6 k# ]# G% Z+ \$ G. l/ j: kimport swarm.activity.ActionGroup; 1 w" t: Y. W+ h) |; ^( I
class Agent {
0 Q& k' g7 ?4 Z* @; h. D& g        char id;
& N! J; p: D. }
$ d9 D, ~5 j4 P% B' X8 h1 F7 m4 p        Agent(char id) {
# d+ e2 e) r8 U                this.id = id;. f" i+ r8 O: d; S
        }
; T, p$ S. T/ T% f3 o* W" b9 l7 b5 ?! m( J% [* n0 E
        public void agentStep() {
3 R* D) [' u/ E- o* q, \& V                System.out.println(id + ":" + Globals.env.getCurrentTime());4 x' H9 l" {. r2 m4 a; h7 A
        }
* b. T9 q: U7 F( ]/ c8 x}
4 ^; K% ~' x( n/ ]2 V, |1 N$ D
8 m* }6 d( N. |: A/ k$ `2 D9 j: k; Cpublic class ActionGroupDemo extends SwarmImpl {* T3 K! g2 g$ n  M+ F
        ScheduleImpl schedule;, {$ D. h" k3 j+ I; G6 ~: Y) e
        ActionGroupImpl actionGroup;4 q1 Y2 |( d( V" ?  L
        ListImpl list;
8 a& M& T3 D) b        char Id = 'a';; r* @5 y4 Z& O' J
4 O: h, v0 Y: q0 h" K
        ActionGroupDemo(Zone aZone) {. b& X- R& h% n* D
                super(aZone);
3 G* P( t; W: p% b# M                list = new ListImpl(aZone);
  t1 C- Q: }$ X; V; [7 ^- e  q. v, G                swarmSetp();
3 x9 q- H7 Q& M* K9 b7 Z  p                actionGroup = new ActionGroupImpl(aZone);$ T" Q) }$ g1 ?! G
                schedule = new ScheduleImpl(aZone);# n# I# B0 [! ~6 a- L2 U
                try {
2 o! ?! h, |! m4 w2 F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 C! a( ~3 r4 o% W9 I% U! q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% u5 N" J5 D  u2 z2 N- O: ^5 ~( O                        8 R2 ]1 J& b4 R3 W# {
                        actionGroup.createActionForEach$message(list, agentSel);
- l  y0 G4 v) s4 y$ C, J- _. v* s3 R                        actionGroup.createActionTo$message(this, swarmSel);
! Z1 U; }3 X7 C: b$ M                        schedule.at$createAction(0, actionGroup);
% y5 ]  n  H& E9 q) B) Q/ E                        schedule.at$createAction(1, actionGroup);
/ w. \# [/ ]1 Z. y                        schedule.at$createAction(2, actionGroup);
# J' e' I+ A! D* c
9 C  y5 y4 D. L9 N# |$ d* A6 k! r5 q                } catch (Exception e) {3 a, i' T4 ?3 G5 ?- T" @: C$ p
                        e.printStackTrace(System.err);
: P" n3 O; @' |4 Y3 A                        //System.out.println(e);  @! y8 T; w1 }4 s7 ~& R0 e# T$ K
                        System.exit(1);
) Z! [0 C% h- d- i1 X7 {                }
4 \% s" n: d5 Y( G2 ^# t
; S; u& ^: G( u& w
* Q% ]- j9 l* c        }/ P8 M9 z! }) B$ j- v# U7 o" X& z. U5 y, V

7 }) C7 a4 p7 U: N        private void swarmSetp() {$ [2 y  ~% X3 t2 i  s' `
                list.addLast(new Agent(Id));9 Z+ ?: i6 x+ H9 d" A5 S7 \% c
                Id++;+ z$ W! z: m3 v1 y0 P
        }
$ ^6 N+ Z3 _  _$ U! k5 {9 L4 f
( m# g% z& E# ^! _& M( \' j4 h- F        public Activity activateIn(Swarm context) {  ]3 U$ G9 a+ f: p- o, o
                super.activateIn(context);
% O0 d+ a) M+ [. U2 X                schedule.activateIn(this);5 Y8 ]* R3 F! b
                return getActivity();3 G, ?& G& P5 N* ^- z
        }
" E1 X7 a% E9 f. j
( d( U1 c2 ]6 o' A        public static void main(String[] args) {/ ]+ ]) ]3 M$ L6 D7 g  f% `/ t+ V: f9 C
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! P( J7 J4 c/ f# p+ U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# Z: q1 G/ {# K
                swarms.buildObjects();5 a! P3 Q! Z+ B+ I, W! J1 \
                swarms.buildActions();
) x3 \  }, x& ^) `$ x                swarms.activateIn(null).run();9 _, G) K( D0 L6 t
        }
% L) d, W! n: Q: H. p1 _0 b: I3 M/ m* P
* Y1 ?- ]8 ^8 J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-4 10:26 , Processed in 0.018009 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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