设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13746|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 k. v+ R; X$ e9 c/ S0 U
9 }$ v0 ~; }& `9 J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% k6 E% J1 Q% ]$ n1 {" B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ q, I' C0 g0 b6 Z/ Q5 Pswarm.SignatureNotFoundException& n2 h4 C' q% _9 U+ Z* n9 l1 Z
        at swarm.Selector.<init>(Selector.java:76). i6 t4 T* P0 o- g5 P2 X6 T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ _; `8 q& b9 F+ |* w. I
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" S& W+ i# u: }% s: D' k- d  ^2 [$ o" e

( H+ z2 m3 N, L, W- o2 nimport swarm.objectbase.SwarmImpl;1 h) L, u: U- `* @) r! ]- l
import swarm.objectbase.Swarm;4 C0 j1 v( [* D" O. ~8 `- Z4 x
import swarm.activity.ScheduleImpl;0 O1 o) q0 P: X* B& m5 z/ I3 |
import swarm.activity.Activity;
* |$ p/ R: j' s+ ]1 T$ ~1 {import swarm.activity.ActionGroupImpl;
! K0 \  {  A. c: Zimport swarm.collections.ListImpl;
1 d% A0 x4 v2 W7 M/ E( ]" Cimport swarm.defobj.Zone; * H7 `9 I0 W5 J; c2 J2 F/ C' m! ^4 @
import swarm.Globals;3 e! [# P5 S- A7 ?5 F, d- {4 ]' t- q; m
import swarm.Selector;. ~& R) l" z* U8 `4 A6 }
import swarm.activity.ActionGroup;
# ?# W7 g. [7 o$ Fclass Agent {9 N" a5 G, [% f" f) ^$ R' p
        char id;
5 R  d- X8 n( w4 P* B2 t4 N. ^* X; I2 h2 S4 d  m& @5 R
        Agent(char id) {
5 w) O; K0 v* I+ a" i( I                this.id = id;
" O7 C$ [" }% ]        }8 d! K) p; A% c8 V0 c, W
3 z8 _4 h3 q  o5 a* a$ A
        public void agentStep() {
4 x' ~5 b9 V( y  {                System.out.println(id + ":" + Globals.env.getCurrentTime());* l- J) v2 x, P  c
        }. }: g2 M# B/ q4 b) ?8 P
}
. o% h9 t* B& t7 |2 k* D$ Y- O9 D5 t. \! M+ a
public class ActionGroupDemo extends SwarmImpl {
3 m9 I/ K3 i7 c/ `" u  D! F+ k        ScheduleImpl schedule;
0 J1 I3 W) o6 X8 t        ActionGroupImpl actionGroup;5 U8 \) I; B& j" K* F' V  R- d
        ListImpl list;
) r. w+ p- D. p! Q        char Id = 'a';) @! \) D4 F) P0 r( C: i6 D) s9 k# A
* y% p- l4 k! y$ \* p- j2 X
        ActionGroupDemo(Zone aZone) {7 D/ W1 M( [- H2 X) |( n0 e" z
                super(aZone);
7 u9 b* Y; W9 b                list = new ListImpl(aZone);
4 w: @" R/ {/ D& U2 a, ?                swarmSetp();
) b% \6 Y" o& N3 p                actionGroup = new ActionGroupImpl(aZone);7 a- e$ _# T) u+ |, m, l2 x
                schedule = new ScheduleImpl(aZone);
0 y7 i) s, w. @4 O) ^                try {8 z" y) |  v4 D5 o0 W
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 P. d- _; p7 L: P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; n; p. g, H% f3 U+ p4 h4 ~8 H
                        6 Y9 _6 j0 Q( g0 c/ a
                        actionGroup.createActionForEach$message(list, agentSel);
0 @& ^7 z+ u1 f3 o/ s                        actionGroup.createActionTo$message(this, swarmSel);* m* V3 v, N7 y9 s
                        schedule.at$createAction(0, actionGroup);! ~7 K% p9 e! w' e8 m- C- A$ t, A
                        schedule.at$createAction(1, actionGroup);
9 U4 {7 r% {8 Z- O) N                        schedule.at$createAction(2, actionGroup);2 b% n" z$ L+ K2 O6 x5 _4 c% D

( g- D7 l# q- C$ o                } catch (Exception e) {
5 w- M- U! G4 p; Z8 E9 _6 T. U                        e.printStackTrace(System.err);
5 x$ n8 k% k$ n. ^) y                        //System.out.println(e);2 P- X3 i3 d7 v) g+ ?
                        System.exit(1);
4 Y: ~! m" K1 _) _3 S                }
7 z3 d9 ^0 a1 R8 Z/ M( B* }+ D& D: v# p9 H, b) ^# m
7 v9 i' u3 D3 v- E5 ]4 d, e  F
        }8 J# y! H% C. g- h- ]+ u; z
8 m4 [9 K  {# ^  W
        private void swarmSetp() {/ o: \/ g8 r! q8 c
                list.addLast(new Agent(Id));
5 K6 }1 K* S$ t9 c% I. z2 d7 E                Id++;
9 _* h9 S, m9 F. o        }% C3 g( w$ ?- |% k6 g: Q  e

/ y: W4 d$ E- d5 s* U% P9 D        public Activity activateIn(Swarm context) {
& S' v8 t' c" b% C" ]                super.activateIn(context);
6 s3 Y# S# @0 |* @' U; Q                schedule.activateIn(this);
* r- Y, r  I! I                return getActivity();4 s& M& `6 n. [1 e( x" C4 W
        }: x8 e3 }- B, t! @  R5 x3 t; }/ P
: q+ j) |5 z' m! [- v
        public static void main(String[] args) {
- a* H3 s/ w$ z7 |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 g, m9 \- V' E1 |7 p
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' J9 [& s* X5 x- _! M4 j1 B/ j& D                swarms.buildObjects();/ p8 E7 |! S, b6 U( Q
                swarms.buildActions();
8 e: }  y6 m) m8 _' P1 m                swarms.activateIn(null).run();
+ f  [$ T, I$ g        }
! R$ v' M, n# e; _: U' M
( [/ K+ F8 j& @! B}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-16 08:53 , Processed in 0.015870 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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