设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7391|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # Q5 a! h: F/ B( L' N
  V  ^1 W. ?0 @( L- q; f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& Q9 S/ X5 H8 f$ w/ x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( M! G# x7 g8 H/ \  U/ W. ?
swarm.SignatureNotFoundException( z8 z! S( D9 h3 _' P2 s0 {% o$ }
        at swarm.Selector.<init>(Selector.java:76)4 S; z/ T. _$ K3 L5 L; j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* z1 z) O( ?) s/ `9 w! k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 \  J1 w% \1 g; w3 y
) {- r$ U) N5 F2 `# k' q- N3 B* q! Y/ M
, o# q! w$ i7 `8 q! T
import swarm.objectbase.SwarmImpl;4 W2 ^8 v8 ?+ `; k
import swarm.objectbase.Swarm;
+ e6 _( I9 M  zimport swarm.activity.ScheduleImpl;
% z. L# }8 J0 }8 t" b4 M( oimport swarm.activity.Activity;2 u: H' y+ E  F" T5 [
import swarm.activity.ActionGroupImpl;, M6 w% z1 _% C) d3 q3 W$ U
import swarm.collections.ListImpl;
8 q/ R. A2 K1 [: S3 iimport swarm.defobj.Zone; 0 Q" x2 v, L! }0 n
import swarm.Globals;% a+ l) z; \9 j! B. e
import swarm.Selector;2 l$ L- v' E/ m5 g0 q
import swarm.activity.ActionGroup;
1 \( I6 ?" A& N8 eclass Agent {0 z4 r( X, A2 Y: d# \
        char id;
1 Q5 h' t* A% x- Z) t$ h
4 f' h4 c3 @8 u        Agent(char id) {
, i/ H( a0 l: Q5 ^( u                this.id = id;
7 y  V# l6 p4 }$ D        }" W0 m& Z8 m( E0 G/ ]

) L+ f7 W$ u! ]: }/ g$ X        public void agentStep() {
# w2 U* |+ T% k; P9 r$ I( Y                System.out.println(id + ":" + Globals.env.getCurrentTime());5 }* w& W9 x) y) u4 n- t! w2 ^" b
        }4 g5 R9 ~0 M/ u& n( p
}
* {3 F: o- j) G5 m( {, s* k) ^. E8 P6 W' a9 r4 B
public class ActionGroupDemo extends SwarmImpl {& b# v; ^0 s+ w. W6 R1 H6 J
        ScheduleImpl schedule;
! b! u7 ~" m- {        ActionGroupImpl actionGroup;" E( @0 S/ a2 E+ ?+ `
        ListImpl list;
2 g( F) G  f' M+ \0 _& k; _* x        char Id = 'a';
8 C* c% a8 j' D  p2 W* k3 j) \! p" j6 M3 j
, {8 M+ W( ~# n6 u" ^1 q1 J+ U        ActionGroupDemo(Zone aZone) {% n0 w' s/ i6 Y; ^1 S
                super(aZone);
. t1 Y* q4 c9 O+ w9 R8 i                list = new ListImpl(aZone);* i* P( Z6 o" V- @) Q% I
                swarmSetp();% @* k2 Z" u5 x( D& B" t
                actionGroup = new ActionGroupImpl(aZone);/ z- o, U/ P* ]/ p
                schedule = new ScheduleImpl(aZone);
9 s! M# A( r( {                try {
6 o) G# X. G- _" |) d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 K+ K- l2 y% T% z# @; d" \
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) e: J: \! Z0 [, K- K, n2 t
                        % D' t1 E2 W3 `* c; Q
                        actionGroup.createActionForEach$message(list, agentSel);
6 Q5 v# Z7 ?; }' n7 q! l$ x                        actionGroup.createActionTo$message(this, swarmSel);
) F8 o& o; A4 N' N  ?+ r1 e6 Y                        schedule.at$createAction(0, actionGroup);
: U* N. w3 a$ Z6 j" L- V* u6 ]                        schedule.at$createAction(1, actionGroup);- `' o% `# U7 O* [  V: F$ {
                        schedule.at$createAction(2, actionGroup);
4 ~) g2 p$ G4 l. e, q! y' h+ x* L! A+ p( h& \& R
                } catch (Exception e) {
% N+ i. s/ u! s, s; ^" U$ T                        e.printStackTrace(System.err);6 p5 M: I1 v3 {2 {: O' t
                        //System.out.println(e);+ m+ z, [$ f) ^0 Z/ W$ G+ |- y
                        System.exit(1);
+ [1 k; g& o! ~( }1 c                }! y& A0 f: {+ {" C7 L

0 s. f; G9 O1 f
& v' Z  I- M9 a% f) i        }
% x/ T- l  x/ H  s" M  ~7 o  b! H2 `
6 Y6 w+ A6 v0 O! y' l; R- L$ H        private void swarmSetp() {5 _  B9 O9 h$ B6 |/ R) a
                list.addLast(new Agent(Id));. I2 H1 O2 o7 V' r3 z
                Id++;
) F5 U6 r" U  h' [. [, L        }1 {. h% \. c. R1 s1 z  O# ~5 j* x
2 F) \* @% W; b  a
        public Activity activateIn(Swarm context) {
# t6 g2 T+ ]6 V" d+ I6 v$ A                super.activateIn(context);$ z! Y- Z) s, j0 [  d" @" v/ ?2 e
                schedule.activateIn(this);
5 H4 t. P9 ?7 P, \                return getActivity();
' G+ j: M  p+ @2 i/ b        }2 y2 u% j( D/ `: z" W: M; }
+ J6 e* c$ ]/ M, r
        public static void main(String[] args) {% x8 b. U, u, K& x, u, R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) I0 o( q( w8 b- |, D' A: u
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( z0 u! J' e0 ~2 f) b! ?, F, ~                swarms.buildObjects();
9 L" d! _' j8 W2 ~& X6 [3 k                swarms.buildActions();( ~0 k  h! w, q( [2 q
                swarms.activateIn(null).run();- n& L' F! f8 q' q- |6 y! W  V
        }
; K2 m% h! g2 u4 J0 ~) |5 V) M& X& `0 p* T  ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-28 21:56 , Processed in 0.017670 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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