设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10766|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ p' I8 ]  Y1 L  y/ V
; I6 F% D, x1 P& E1 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 a# I0 w2 }' r0 L1 V, O# L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) k; F9 g! D% f9 m/ X4 L$ C
swarm.SignatureNotFoundException
7 x5 m. z$ s* T/ B  Y6 n/ R# I        at swarm.Selector.<init>(Selector.java:76)9 P% @+ ^  U& n$ B5 s/ [0 _, }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& Q1 b5 I8 o% ?8 F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: V2 f6 N" K6 b8 V+ r0 t
$ r9 H. D0 z. u  d8 c) O4 z$ g; B( }" l. g# n9 j
import swarm.objectbase.SwarmImpl;" s$ h& @/ W* c- v# j+ N& b
import swarm.objectbase.Swarm;! Y7 k, ?( [5 g" }3 v- _4 u
import swarm.activity.ScheduleImpl;) `1 W) N$ Z# q7 L
import swarm.activity.Activity;
5 d* ^  S2 t: D1 @import swarm.activity.ActionGroupImpl;
4 n1 v4 W9 M7 A: J! f2 ^, yimport swarm.collections.ListImpl;% Q/ c2 K, d0 Q2 z4 X, D) f  E
import swarm.defobj.Zone;
# w5 `8 S$ t& D# vimport swarm.Globals;
8 F2 s# N( d! p/ d" u) Bimport swarm.Selector;
/ A1 t- r+ _# r- ~1 gimport swarm.activity.ActionGroup;
, n5 E1 |$ G; g4 V+ s" L) L# Sclass Agent {/ c" e" k7 P5 P% `; k
        char id;
' j5 w% C# K) b- O
3 o2 V" [' y/ J        Agent(char id) {- R0 w  t7 u8 _! E" U# w
                this.id = id;
* U, {1 y1 m6 q- H8 ^        }2 w6 h" f! i/ ~1 K! b. @
$ \3 X; k# ^' m% m
        public void agentStep() {5 ^2 m( j3 h! s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% e$ ~& ?) {2 ~8 B        }
1 b) }3 E1 \6 n}
! d3 @; Z) L) M# P3 L8 u2 j/ F0 M6 R. i1 q
public class ActionGroupDemo extends SwarmImpl {! u( @0 l7 z: u, j+ Y- y
        ScheduleImpl schedule;
3 z" R, \+ w: l        ActionGroupImpl actionGroup;: w: \' n+ Y* H$ _8 e
        ListImpl list;- C7 p" C$ w$ N" _
        char Id = 'a';
/ q- L2 M# ], ^" ?% d4 c
8 q, T8 D. j* u: |6 p/ i+ L, a        ActionGroupDemo(Zone aZone) {
# I* B. u7 f' Z  |9 s) j3 W7 E                super(aZone);) u/ C9 A' J( z! S( m
                list = new ListImpl(aZone);6 z! n/ S0 O! E/ ?( |
                swarmSetp();
) H8 R# h1 ^2 z' X# b1 S. a                actionGroup = new ActionGroupImpl(aZone);# ?4 E3 l% Y+ i3 }) R+ y( i) H' H
                schedule = new ScheduleImpl(aZone);) C& d9 S. X1 }
                try {
/ z& s' S" h. l6 y, [3 U$ s  L# @4 B                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 r8 i+ U, b  c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ d% x  U2 M! ]0 p% s. }
                        8 o, z  s1 ^- S+ E& I5 k; u! j
                        actionGroup.createActionForEach$message(list, agentSel);
: V6 u. r4 `( x7 p+ ~" K                        actionGroup.createActionTo$message(this, swarmSel);' v9 v2 B/ a1 j3 b1 @  z
                        schedule.at$createAction(0, actionGroup);
# l" H4 h' z) d4 |9 U                        schedule.at$createAction(1, actionGroup);
7 k7 _% }$ M8 U. D% h$ |! ?                        schedule.at$createAction(2, actionGroup);
2 E/ i: B- K2 ~2 D: g$ H) i0 D
1 @7 [! ~4 c( R/ B9 K: i                } catch (Exception e) {
) k- j0 r: \/ s& t7 Z                        e.printStackTrace(System.err);5 h8 |2 w' Z* B, c
                        //System.out.println(e);
( Q" s( K+ W2 z' Y4 J0 ^                        System.exit(1);+ I  W1 O. Z! N& x" d0 _4 w
                }
8 I5 s0 G( d' P3 A$ v0 u- L) q# M6 A5 H# g
# K& X1 J2 K& R! V
        }! S, k% C3 t  S; j
: ^' b. C, O: h# B+ r( L$ z$ N
        private void swarmSetp() {
! N$ @! Z( v; F1 p1 R: N                list.addLast(new Agent(Id));# M" E- k# m" h6 \8 z7 O' q2 c5 V
                Id++;. o6 n. X: o: F" F' T7 a* t
        }
1 ~: }& w0 N% ?8 W  L' [( G9 e% d1 S/ }( ^. I5 Y/ N' U/ d
        public Activity activateIn(Swarm context) {# F( j, Y% L8 t- [; O
                super.activateIn(context);  B1 }! g6 B! C4 |9 |4 l$ G
                schedule.activateIn(this);" D' M; h" E) j
                return getActivity();! W% {4 P$ T& a7 C/ S  q
        }6 C; d* H7 x) V$ F

" v) O7 k3 L, n9 ?( V        public static void main(String[] args) {
% q) W  A/ `! z! Z! F" u                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 r! z% ^, j1 g" P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: e. k/ C# V9 {4 G7 c6 e4 W                swarms.buildObjects();
/ J: R( H3 P8 Y) W7 v3 Y                swarms.buildActions();
2 f3 O; G) N, m  d                swarms.activateIn(null).run();, }6 K, l" N9 o& _; C# v  X
        }
! \# N! a1 C4 W6 L# n
- ]& C, V2 ]& d. F# |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-23 02:15 , Processed in 0.015150 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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