设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6790|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 [3 `0 P2 J/ u4 ?8 l. A- N
/ ^$ h( ~) i/ }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 A1 \4 U: `2 G9 ]; M& D' q* \* z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ D1 P7 r. ^& v0 f
swarm.SignatureNotFoundException
, e. f% N& h) q1 r7 ?        at swarm.Selector.<init>(Selector.java:76)
) q  D# K. P1 T/ @, f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ R  z* N( X( P0 r5 x        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 o6 v2 Q1 l% ?) N
& S: B- [* v, J- t- |
3 X: u, }& u* j$ l9 O" K& H, jimport swarm.objectbase.SwarmImpl;
4 M9 s/ Y9 v1 K/ fimport swarm.objectbase.Swarm;
2 w! T- `% }1 j. @. W/ _" Gimport swarm.activity.ScheduleImpl;
4 g! ^, e# {' V1 @import swarm.activity.Activity;
" ^( e2 N4 |* [, e$ @4 a, f/ ?3 Z0 Z: simport swarm.activity.ActionGroupImpl;
' p4 |1 ~- Y/ r0 @/ b3 n  a9 A* Gimport swarm.collections.ListImpl;' F/ s. B' S* H( g
import swarm.defobj.Zone; / @7 y% |& ^. g) k: r2 {
import swarm.Globals;8 C$ j+ e* \( ]! M
import swarm.Selector;  k' h" v8 f6 w. n  V+ ~
import swarm.activity.ActionGroup;   k. ?: Q; K# Z& n* n& p
class Agent {1 p4 B8 @  h7 a; j% ^' R* S6 b# v
        char id;" W& Z/ y8 Q5 W3 B, B
( H3 X# m9 n, ^* s5 N3 T2 B
        Agent(char id) {
* h( {+ @/ i# P  L9 p                this.id = id;
$ f! K2 J, w7 j8 K8 i        }+ j  y% H7 @' }* ~  N$ ~
* U3 w% u  X, D1 j% l
        public void agentStep() {+ R7 r& ~' j) Y; l  A$ N
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 c+ n4 s' D$ w# H( u        }  C% b* o% j) r( y2 W# w9 Y
}
8 K- ^: `' I* W/ D
& \4 i1 D/ [$ N' P0 v) Q- {public class ActionGroupDemo extends SwarmImpl {2 o  v) p8 {# L/ L6 X
        ScheduleImpl schedule;
) d0 r! A" h+ W# A$ I- l1 O/ p5 G: g        ActionGroupImpl actionGroup;
/ U1 h. o* V- M        ListImpl list;
. u0 B6 o" K1 l8 P+ j9 P& a- k        char Id = 'a';0 h% d3 A- X3 e

. f" T$ p& ^/ _4 G: t! W' B! K( V' M        ActionGroupDemo(Zone aZone) {' N3 v6 _+ |: ?/ H8 X5 K# C
                super(aZone);& n: O* ^% ]  y. x( |4 ~3 @. S& A
                list = new ListImpl(aZone);
  a6 `! g2 I- E( O                swarmSetp();
! ~: V, j6 [3 }  x2 M! t& P7 L                actionGroup = new ActionGroupImpl(aZone);
2 n4 G2 f4 Y4 B% c                schedule = new ScheduleImpl(aZone);, g( w8 M, l6 t( w) u
                try {
" C7 |: U" x& K& n2 Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) c+ o: e# Q# b4 J8 J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! L+ u- D. ~7 e2 U& a* G$ @                        ( t' [+ z( W5 D& R. q- B4 S- V0 `
                        actionGroup.createActionForEach$message(list, agentSel);! f3 j) b$ L: C- l( ]' s
                        actionGroup.createActionTo$message(this, swarmSel);
* }5 b. y% L8 k* Y! x                        schedule.at$createAction(0, actionGroup);
5 N. t( M: f# U                        schedule.at$createAction(1, actionGroup);+ O$ ~; ^$ y; B% @0 v' S6 ]
                        schedule.at$createAction(2, actionGroup);( x1 d& n1 K+ S( C7 N

7 S& e/ Z! ?3 X( t) T1 j                } catch (Exception e) {
1 W0 H( w9 W/ c) s$ L                        e.printStackTrace(System.err);
' w, _5 b: ~6 M& b  ~                        //System.out.println(e);" ?: }$ |1 h- Y% O  t' Y3 \- g
                        System.exit(1);
# y- F) S2 N6 Z  e& ]! f8 n                }
, N5 j3 ^7 d# d* {. f6 J0 h+ _* l7 q7 l. [9 E9 i8 v$ i4 P* H4 O6 n
% f4 Z+ u% T; `, k6 S% y
        }
: v0 i0 ]# }3 p2 W- l# ]! D2 j8 I' N; f; O# H2 a
        private void swarmSetp() {
5 \# M: @) y, p3 {* O, g2 L                list.addLast(new Agent(Id));8 P/ j- E* F6 q" R3 G' n9 \$ F
                Id++;( f5 e# t9 E* o8 m  E
        }; W! L" A# I+ U
7 I0 x4 B6 G: q( f6 @
        public Activity activateIn(Swarm context) {7 u8 ?) U# \' G" c1 ^) w
                super.activateIn(context);7 R5 W8 v; N: A
                schedule.activateIn(this);) o* H+ w; r# s' E* e7 w
                return getActivity();! @4 A# V! n* s0 a$ [: }, a' D/ }
        }: f1 @! k7 y. L. f
+ i6 u2 `+ K* B  d9 U3 {
        public static void main(String[] args) {- E% W' i& a$ L3 P  l/ g) s
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ Z% ^/ ]4 U) e) C( V" n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 i$ H5 W5 f: K' X# N0 V
                swarms.buildObjects();! `- c' C+ Q6 W
                swarms.buildActions();* U- {; C6 y6 Y, v6 L$ P/ y+ b
                swarms.activateIn(null).run();
  g, \9 {) c6 G. j        }# s) [9 U" E, x, Y# O7 L0 w! O
: S9 j; p% J6 m. A: ]% H
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 10:28 , Processed in 0.014112 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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