设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4861|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " `; M1 A0 ^2 N4 E0 s0 i0 L$ `% `

% c( o* I0 N- j2 R: u& Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" I' ?/ x1 i7 C. {- |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; e2 t+ b% J$ C% _2 t9 E( ^  @% ~9 ]+ R
swarm.SignatureNotFoundException" R0 ]+ K! Y3 |6 B. x
        at swarm.Selector.<init>(Selector.java:76)
5 W0 Q2 s/ {) W) M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); R8 U5 T% A; Q% W8 o' B- ^
        at ActionGroupDemo.main(ActionGroupDemo.java:67)" y" u" |8 s5 J% H

# N5 m* E6 M0 @: S. _' @, w
8 E- D/ z1 [4 Jimport swarm.objectbase.SwarmImpl;7 q2 B2 Z: W3 `1 n. y0 ^
import swarm.objectbase.Swarm;. n& b  u( k5 v7 F, Y
import swarm.activity.ScheduleImpl;5 r& V0 G% A) _3 U
import swarm.activity.Activity;1 Q3 r  X  a; k% W6 `
import swarm.activity.ActionGroupImpl;
' C) r  ?8 Q% P; {import swarm.collections.ListImpl;1 Y6 ?+ k  m2 u3 Q8 r
import swarm.defobj.Zone; . H  f' ?" K2 I: E) e( J
import swarm.Globals;8 ^$ v( R* s* A/ c7 d' d" @
import swarm.Selector;% J. p5 v  c6 Y) Z7 |- A* J7 R
import swarm.activity.ActionGroup;
6 x( B7 a) e8 g" i. E$ I7 h3 x& sclass Agent {, \5 [7 d- R% h( p
        char id;
8 [/ k. n9 D5 W( ]2 e8 t3 \
5 e  X1 p+ v) ?8 X        Agent(char id) {
8 U- k1 S# w# K0 R2 u                this.id = id;
1 O5 e( I5 `4 y* U        }
! H% p% L. `+ |
  S  S8 ]1 E3 Y8 j' x8 a        public void agentStep() {
5 S: e" \2 q. n2 r                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 b; K, J0 l2 }2 Q        }
# r2 A$ i) I0 S& W0 _1 X8 z}
6 w7 ^# l" G9 F! `" `- l3 s0 B7 F$ k8 P; U! L) {' t
public class ActionGroupDemo extends SwarmImpl {
0 |' h6 t6 T4 ~5 M6 P# Z        ScheduleImpl schedule;
2 c5 Y- j/ r8 t( m        ActionGroupImpl actionGroup;8 e4 S4 p2 S. q
        ListImpl list;4 x& q& [* p! P, s% Z, o# b
        char Id = 'a';; l! n3 D0 F, E
7 {( u- q& t5 t! U2 V- e
        ActionGroupDemo(Zone aZone) {
* B; q4 x# e  ]; {' ]) Q) k0 t                super(aZone);; o% |2 Q+ l* L6 h4 ~$ G4 O, v) c  r
                list = new ListImpl(aZone);
; T9 @; K" j& I! q. n* ^3 X) r                swarmSetp();
3 l  j- W, j; S, \+ R5 a( z0 ~                actionGroup = new ActionGroupImpl(aZone);6 ]) a; m4 L3 `1 i/ `
                schedule = new ScheduleImpl(aZone);" a% s0 e. |1 [6 {* Y% ~
                try {9 n; ^: k: K! H1 a" S" t
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# t: S( u+ H1 a/ D! o, ]9 N6 w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 [+ k& g- R# B! J5 M5 {' ?                        
0 E- Y4 T9 |2 O3 k, o  q; w# d                        actionGroup.createActionForEach$message(list, agentSel);
# L4 Z' _5 G; H                        actionGroup.createActionTo$message(this, swarmSel);- ~* h' m( A4 N  [- _
                        schedule.at$createAction(0, actionGroup);9 L! ^% U0 i) u' M" d
                        schedule.at$createAction(1, actionGroup);" M: Z/ D# c* q5 d% y; H
                        schedule.at$createAction(2, actionGroup);
4 a/ d9 w7 ?7 B
( U; ]" v+ l5 K, W                } catch (Exception e) {
! z# [0 V! ^$ E  W1 R5 Y7 _                        e.printStackTrace(System.err);
* _2 Q5 Y* ^) E7 Y, v# }/ T. r  g                        //System.out.println(e);, I& B' C! x/ ^* s2 M; l  Z
                        System.exit(1);; n3 |$ ]- v$ ]' B# H" M  M9 ?
                }- H5 |- n' {; E; Z
- `& ^9 U2 \* U' z
1 Q2 U4 D  f! V
        }
5 O# N. E" n5 O8 r) G5 D& E% ^* M1 c: O9 F1 m
        private void swarmSetp() {# {* q3 g9 h9 K: A5 d3 v
                list.addLast(new Agent(Id));
; u: t# G, C" ^( b+ A% L                Id++;. o6 m$ A1 }7 u4 b. j
        }& I/ I: M0 H/ w% t

) R, Y5 d0 M% C4 ?7 \$ f+ L        public Activity activateIn(Swarm context) {
6 k8 H9 e1 x4 r3 j                super.activateIn(context);
  M. u' a- N1 s                schedule.activateIn(this);+ {9 g6 {% y5 R3 l
                return getActivity();
$ E+ G2 t7 H0 k, D% A        }% Q1 o, R8 f! k) X- q
* a. J: l  y2 o. X
        public static void main(String[] args) {
" @& N$ X, G( h* h7 Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 {4 d( L& O% x6 y/ C* X7 u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: f+ y' M) T) C0 P                swarms.buildObjects();6 ]8 W+ h$ U% h, i' j- W& a1 M
                swarms.buildActions();2 l& f! @. C/ N: R
                swarms.activateIn(null).run();
7 u& _$ k9 `+ u: x5 B9 l        }
7 N9 ]" @+ a2 p+ w6 \
7 F4 P0 G5 N5 c' ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-15 02:53 , Processed in 0.022328 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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